- Wired internet - I can't work in bed?
- You order a feather-free room (because they offer), and then they are surprised, and have to find a new room for you.
- Wired internet - really?
- Oh, and the 30 minute shuttle from the airport took an hour.
Monday, January 25, 2010
Minor Frustrations of a Hotel Traveler
The Hassles of Multi-Language Programming
- c
- c++
- python
- java
- ruby
- perl
- sh/ksh
So, my edict (for myself only):
- I don't do web development, so there's no reason for ruby - it's not superior to python
- I don't write shell scripts anymore unless absolutely necessary - write it in python - it's really not much harder, and you can scale it
- I will avoid c/c++ when possible, for the simple expedient of not compiling - mwahahahahah! - so no writing of c/c++, but debugging is acceptable. If a student refuses to use gdb, well that's her/his problem.
- python unless I need libraries or speed that I can't get when by going multicore/node, or if I absolutely need libraries, then perl (this is hard for me, as perl was the first language I loved)
- Java only when it makes sense to have strong typing. I don't write enterprise code anymore
- go can go away - I don't need it - I really, really don't
However, all of this is practical; I miss lisp and smalltalk. And don't get me started on C#; a lovely little language that can not travel.
Free Airport Wireless
I should note that I hate the word "wifi." It's too cute/clever for my taste. In my circle, if you say "wireless", you mean 802.11b/g/n wireless internet access, so I just use the term wireless.
Denver has free wireless. Of course, you get banner ads; someone is paying, there's no such thing as a free lunch, etc.
Still, it's great. I don't have to log onto a service, see if my plan is compatible, wonder if it's worth paying, gawk at the ridiculous price and bizarre options (who wants 24-hours at an airport? sure, it happens, but it's usually not planned).
Like many of my peers, I use the internet to get work done. I need to communicate, and I need access to, ahem, resources. My sister, btw, who took my photo, thinks that it's really neat that I have (in theory, at least) access to the eighth (?) fastest computer in the world. I have other resources, too, and since my work (data mining, clustering, etc. - continuing the major themes of my dissertation) is data heavy, I can't really bring all of my data aroudn with me. It's easier to leave it in a place where I can computer to my heart's content.
I would really, really love to:
Denver has free wireless. Of course, you get banner ads; someone is paying, there's no such thing as a free lunch, etc.
Still, it's great. I don't have to log onto a service, see if my plan is compatible, wonder if it's worth paying, gawk at the ridiculous price and bizarre options (who wants 24-hours at an airport? sure, it happens, but it's usually not planned).
Like many of my peers, I use the internet to get work done. I need to communicate, and I need access to, ahem, resources. My sister, btw, who took my photo, thinks that it's really neat that I have (in theory, at least) access to the eighth (?) fastest computer in the world. I have other resources, too, and since my work (data mining, clustering, etc. - continuing the major themes of my dissertation) is data heavy, I can't really bring all of my data aroudn with me. It's easier to leave it in a place where I can computer to my heart's content.
I would really, really love to:
- Kick off a job on a server while still at home
- Catch a cab to the airport and sail effortlessly through security
- Get some programming/analysis done on the flight
- Land
- Connect back to my server and find the status of the job and/or result
Friday, January 15, 2010
Getting to Love Python
So I ran into a bit of struggle last night/this morning. I found some code that took a stream of data and wrote it out to a file. Unfortunately, so I believed, this wouldn't work:
Wrong. The code above works, because python doesn't really give a damn about your data until you try to do something with it, and then it does its honest best to do typing/transformation as necessary.
Now, the problem is that this isn't well-documented. Why not? Perhaps it is because the "feature" is just python; it is just assumed by python programmers to work. And for more naive programmers, a smart typing system is a very, very good thing. Also, there are downsides to "smart" typing; when it works, it is just smart typing, but when it doesn't work, it is "smart" typing. There are good uses for scare quotes.
I do like typed languages, even strongly typed languages; they have their value. I miss overloading methods (yes, you sort-of can do it, but not really). The best method overloading, btw, is in dylan. Too bad, Apple could have had the best core development language, and now they have perhaps the second best.
This shouldn't work for the simple reason that strings are not binary. Strings are essentially char *, right? References to arbitrary-length arrays of characters. Oh, sure, they could be unicode, but they can't be binary, right?
f = open("/tmp/foo")
s = getsomestreamofbinarydata()
f.write(s)
Wrong. The code above works, because python doesn't really give a damn about your data until you try to do something with it, and then it does its honest best to do typing/transformation as necessary.
Now, the problem is that this isn't well-documented. Why not? Perhaps it is because the "feature" is just python; it is just assumed by python programmers to work. And for more naive programmers, a smart typing system is a very, very good thing. Also, there are downsides to "smart" typing; when it works, it is just smart typing, but when it doesn't work, it is "smart" typing. There are good uses for scare quotes.
I do like typed languages, even strongly typed languages; they have their value. I miss overloading methods (yes, you sort-of can do it, but not really). The best method overloading, btw, is in dylan. Too bad, Apple could have had the best core development language, and now they have perhaps the second best.
Thursday, January 14, 2010
Why the Name?
If you read this, you may wonder why I'm an "unseen academic". There are a few reasons. Notably, I work in a basement laboratory, in the corner. I have an office with a beautiful view and a window that opens. Why don't I work there, you ask? It's a long story. So physically, I'm not seen very often. Actually, I really, really like this for when I need quiet time.
However, the real reason is an homage (oddly timed) to Terry Pratchett's Unseen University, the premier institute of higher learning on Discworld. OK, fair enough, it's comic fantasy, so we're not talking Shakespeare or Joyce or (thankfully) Proust. Madeleines, indeed. No, we're talking about an eccentric, eclectic world at the center of which (well, not center, not really) is a university of magic.
If you know Pratchett, then you might care to know that I often see myself as Rincewind, but really, others see me as Ponder Stibbons.
I have yet to read Unseen Academicals, but I have it in my possession, and will read it shortly.
However, the real reason is an homage (oddly timed) to Terry Pratchett's Unseen University, the premier institute of higher learning on Discworld. OK, fair enough, it's comic fantasy, so we're not talking Shakespeare or Joyce or (thankfully) Proust. Madeleines, indeed. No, we're talking about an eccentric, eclectic world at the center of which (well, not center, not really) is a university of magic.
If you know Pratchett, then you might care to know that I often see myself as Rincewind, but really, others see me as Ponder Stibbons.
I have yet to read Unseen Academicals, but I have it in my possession, and will read it shortly.
Welcome to My Attempt
I've been thinking about how to present my academic self. I had what was essentially a wiki, but it wasn't really very useful, and certainly not attractive. My boss/advisor, Simson Garfinkel, has what is essentially a wiki. My long-term mentor, Frank Ritter, uses raw HTML. My friend Bill Stevenson uses a blog.
Now, I could, I could get a domain name, but all of the good ones near my name are taken. I don't really see the advantage. Admittedly, if Google/Blogger decided to change their TOS, I would have a serious headache, but so would thousands of others, so it seems unlikely.
All I really need is a place to put up my contact information and publications. We'll see if I ever get around to blogging.
Now, I could, I could get a domain name, but all of the good ones near my name are taken. I don't really see the advantage. Admittedly, if Google/Blogger decided to change their TOS, I would have a serious headache, but so would thousands of others, so it seems unlikely.
All I really need is a place to put up my contact information and publications. We'll see if I ever get around to blogging.
Subscribe to:
Posts (Atom)