Monday, November 22, 2010

Airport thoughts

I'm sitting in an airport (again, still always) and am researching two things:
  1. Drinking water test kits
    Conclusion: If you want to test more than one thing, it gets damn expensive. There must be a better way. It may be time to buy some agar and petri dishes, because it really is just that simple.
  2. Arduino projects for non-newbs
    Conclusion: there are a lot of newbs. Also, I need to figure out what I actually want to do with this thing. Ideas: door-opener sensor. Robot (of course) that moves around in my apartment and puts my roommate's pets back where they belong. Alternately, squirts them with water. ...that might be a little complicated for a first project.
Not having much luck yet with either, but it's early times yet.

Soon I'll work on the code test that I'm writing in C#, which I don't know.

Midway airport (MDW, Chicago) Southwest terminal has no pornoscanners and no patdowns. They also didn't see fit to ask me about the two large containers of JB-weld in my carryon.

Friday, November 19, 2010

ThoughtWorks Home Office Day

ThoughtWorks Home Office Day apparently hasn't happened in a while... like, a year or so (although Chi-Fridays happen every month?) Anyway, one of them happened today. I met Ronnigan, who's also a new hire starting in January. I introduced us as Newb One and Newb Two. I met a ridiculous number of people whose names I don't really remember, including the head of TW in the Americas, to whom I said "well, shit." I think that falls under the category of putting my foot in my mouth rather than speaking truth to power. He didn't seem to take it badly.

Joanne explained that TW has a very "flat" structure... which basically means that 1. I will someday get to meet Martin Fowler !!!!!!!! 2. It's normal to mingle socially at company events with people who are serious firepower.

I went to a session on Mingle, which is software that TW made to manage Agile projects with. It looks like it'll actually be useful. I like large parts of the UI. However, I am severely disappointed by how slowly that chart rendered. Seriously, it took over two minutes. Nothing should take over two minutes. Especially something that you need to do all the time...

I went to a session on noSQL, which as cool... mostly review for me, but shiny. MongoDB is a big thing at TW, it seems.

Went to a session on "the cloud" which was interesting. Lots of stuff about how it can apply to current and future TW projects, and things to watch out for... i.e. reserved vs. non-reserved instances.

I wonder what my life would be like if CleverSafe (a cloud services company) had hired me. I hope they fix the problems that the one marketing guy left behind. I still wonder how their algorithms work, dammit. (InStep Software called me to schedule an interview a couple days ago but I told them that I was currently employed. I am charmed that they called, though.)

I went to the lightning talks. I liked the one that was basically a State of the Union talk on what's up with Oracle and Java. It's all a little complicated... There was also a talk from the women's shelter people that the in-office hackathon was benefiting. And one from Julie and her Grace Hopper peeps, so that was cool.

There was a large session which focused on the three columns... breaking up into groups, etc. Post-its are awesome is the lesson here...

I went to the birds of a feather meetup and sat in the dev circle... it was pretty awesome. When Ron said "Flash" he got a kinda incredulous/eew reaction. When I said "crypto" I just got a hell of a lot of perfectly straight faces...

By the way, it turns out that the Borders that I pass on my way to TW has a bitching hacker section in their CS books. It's on the third floor... somehow, before tonight I was under the impression that there were only two floors. -shrug- Now I know. I intend to make some serious purchases someday soon... probably on Amazon, because those books are fucking expensive in-store.

As for further festivities at TW... there was beer pong, and a wine tasting... and excessive amounts of tasty beer, including Sierra and Blue Moon. So I can't fault their taste, although if there had been Guinness or cider I would've chosen that over anything.

After TW, I went to the IIT acappella concert. It was glorious. I think that it's the first time in perhaps several weeks that I've felt genuinely moved by something. They're having some trouble producing and delivering the CD that they took many pre-orders for, several months ago. I wish they would just distribute it on Bandcamp.

One of my friends bought a welding torch and he and some of the guys were practicing pulling good welding beads... on the kitchen floor... which is now scorched... sigh. Well, that can be covered up. I have to say, I'm excited to have access to a torch. (Yes, they also have a helmet facemask shield thing.) I plan to take pics of the welding in action.

Friday, November 12, 2010

VPN (status updates)

I know what a goddamn VPN is, I'm just having trouble getting from point a to point b goddammit.

--

Aha, VPN. You are mine now.

--

No wait, this isn't working.

--

to be continued...

Euler project 11..n

So, Euler problems 1-10 have increased my knowledge of ruby, python, and pain. It's been fun, and took longer than I wish it had. Obviously it's time to start on #11.

11. http://pastie.org/1306770 This could use some refactoring, but it works. It took me a bit to figure out, but I learned a lot, and didn't steal anyone's code. Although rancor did tell me that string.split existed.

16. http://pastie.org/1342335 This one was disturbingly easy and I don't know why. Maybe I'm getting better at Ruby. Or their ranking system is off. Something. Yes, I skipped 12-15 so I could do this one quickly and feel happy.

20. http://pastie.org/1342458 This one was very similar to 16. Doing one makes the other easy.

13. http://pastie.org/1348523 my brute-force solution.

14. http://pastie.org/1348526 my brute-force solution. http://pastebin.com/JVDVBL0b rancorbeast's elegantish solution.

Tuesday, November 9, 2010

prank@WSU Nov 5 awesome

"So far I've received emails from 3 news reporters, 1 job offer at Google, one from someone in Lighty, one from an angry "IT" guy, and hundreds from fans. All in all a good day. Now just to hope my real goal, students making this university a better place, will be achieved."

I admire this guy because
  1. Awesome technical skills (IT actually had to pull the hardware to shut this thing off before his auto-off)
  2. Whitehat (he included an auto-off at 5:01 pm and an uninstall script, with instructions on his website)
  3. V for Vendetta is awesome (yes, I celebrate Guy Fawkes day by watching it)
  4. He knows how to cover his tracks (hasn't been identified yet)
  5. Google offered him a job without knowing his identity
  6. He wants to improve his campus (yeah, I was in student government when I was in college... can you tell?)
I mean... isn't that enough? Dude.

Monday, November 8, 2010

BSOD

Check out the data from the BSOD I just had. I don't know what it means (or even whether the data here is meaningful) but I'm going to put some effort towards finding out, because this isn't the first time that this has happened (the last time it happened, I was using Vista and I ended up installing W7) and I don't enjoy BSOD at all.

Problem signature:
Problem Event Name: BlueScreen
OS Version: 6.1.7600.2.0.0.256.48
Locale ID: 1033

Additional information about the problem:
BCCode: f4
BCP1: 0000000000000003
BCP2: FFFFFA8009D81890
BCP3: FFFFFA8009D81B70
BCP4: FFFFF80002D885D0
OS Version: 6_1_7600
Service Pack: 0_0
Product: 256_1

Files that help describe the problem:
C:\Windows\Minidump\110810-53087-01.dmp
C:\Users\geeklinda\AppData\Local\Temp\WER-104302-0.sysdata.xml

Read our privacy statement online:
http://go.microsoft.com/fwlink/?linkid=104288&clcid=0x0409

If the online privacy statement is not available, please read our privacy statement offline:
C:\Windows\system32\en-US\erofflps.txt

(some) Stuff I've thought about today:

Your ballot is encoded to your public key (all citizens have a public/private key pair?) and your private key is your newSSN, which is long enough that it actually provides secure encryption (unlike current 9-digit SSNs (perhaps your SSN is a hash for some longer number?))
And how cool it is that U of M ppl broke the released version so quickly and thouroughly, and how I wish I had been able to see that first hand.

NASA
- Waldos (explained 'em to a friend) http://en.wikipedia.org/wiki/Remote_manipulator
- fancy new chips -> the singularity http://en.wikipedia.org/wiki/PowerPC_A2

This guy's blog and so many amazing articles on it.


How cool http://news.ycombinator.com/news is and the fact that I only two days ago went through a huge list of reddit channels, customized my front page, and now surf it about as often as I check boingboing (and the fact that Google Reader is NOT an acceptable solution for my blog-surfing needs... and that I'll probably end up doing a large-scale data-gather on all options, then suffering with something mediocre until I suck it up and write my own)
My favorite reddits at the moment:
http://www.reddit.com/r/netsec/ I have a special love for this one, actually


This excellent new(ish) gourmet organic resturaunt near where I live and how much I want to go there for dinner, since they've started serving dinner and cocktails.

http://code.mixpanel.com/amazon-vs-rackspace/ I.e. what sysadmins want from a cloud server, why they want it, how well different providers provide it, and what providers will do in the future- and the "style" of the providers.

Why I haven't gotten around to ripping this DVD of Sweeney Todd to a local version which I can use even while I don't have this inconvenient disc in my laptop, asking what I want to do with it every time I return from hibernation and confusing my startup processes by being potentially but not actually bootable. (Answer: how do you do that on Ubuntu, anyway? It's not something I've ever needed to do before. Put a bootable .iso on something, yes; burn a local copy of media from something, no. I'll pick a pretty tool and use it soon, yes yes.)

http://goo.gl/ and how amazingly excellent it is and why have I not been using this and look at all of the cool things that it can do! Although I was failing a copy-paste from it when my computer took a BSOD moment just a few minutes ago, so that's not really the best way to start a relationship.

The fact that attempting to connect to picasaweb.google.com while using Chrome and KB SSL Enforcer makes Picasa wibble and then give me a "no ssh available" error, and whether this is repeatable, and whether I have the patience to test it right now.

Also, (what I was trying to elucidate when I ran into the previous point)
How much space I have on Picasa, and how I'm thrashing my upload and need faster internet.
Space I have in Picasa: 81 GB In use: 14 GB (17.29%)
All of that 14GB is pictures, poster drafts, screenshots... mostly pictures. From the last 4 years. Mostly tagged, although not well-tagged.
My current upload speed: ...not sure, but probably less than 3Mb. This is not a recipe for success.

My irrational fear that ThoughtWorks will for some reason decide that I'm not worth hiring after all and try to break my contract- which, considering that I'm an easygoing kid with no real clout in the world, they could probably do pretty easily. Like, I said, irrational. It would be incredibly bad business sense, for one thing. But still, I do sometimes worry- especially when I fail at something technical or when I start digging into whitehat exploits. Because, yanno, anything whitehat could be blackhat with a flip of an intention.

How cool the revamp of http://torrentfreak.com/limewire-resurrected-by-secret-dev-team-101108/ is and whether I should try to install it on my W7 just to see what it's like. I did use LimeWire when I was a freshman, and probably while I was a sophomore, but I've lost all of my music and I live basically off of Pandora with a small local stash of celtic rock for when I have no network connection. I don't have any motivation to improve my torrenting situation. -shrug- The vast majority of the music I listen to is impossible to torrent because there are no peers for it. Maybe I should start uploading it, but I'm too lazy to do illegal things without a strong idealogical motivation.

The above leads to: BearShare, the RIAA paid torrenting site. Wait wtf rly? Yes, rly. http://www.bearshare.com/ I guess if you don't care what you listen to, it's okay. There is some stuff on there which fits my picky sensibilities, but srsly... " over 15 million songs & videos" ...that's like bragging that your... er. The analogy I want to make here is forbidden by good taste. Anyway. Only the ignorant think that 15mil is a high number in this context.


Always always always choose the "Custom Install" option. You never know what strange toolbar crap will be in there.

My cussing habits and the fact that I should switch back to using something mild like "dammit" or "bloody hell" before I end up sitting next to people who think that saying "GEE-sus onna stick" is inappropriate when I'm caught up in my own thoughts and something startles me out of them.

On a related note, I want to explore this site in detail sometime. http://www.exploit-db.com/

Friday, November 5, 2010

Reverse image search

Reverse image search. There used to be a website which made it work. Like... four years ago. But there can't have been, because there isn't now. And unless someone is suppressing the technology very hard...

Anyway, here's a list of what I see offhand. None of them do what I want them to.

http://www.revimg.net/

Thursday, November 4, 2010

Euler Project

I'm doing problems from the Euler Project just now. My code is hideously embarrassing, but it's all my own and I'm kinda proud that I can write the stuff at all, considering that less than a month ago I might've looked at the problems and despaired, or at least made headway much more slowly.

My profile: http://projecteuler.net/profile/geeklinda.png I wish it said which specific problems I've solved...
  1. http://pastie.org/1273530 An alternate and very elegant solution from rancorbeast ((1..(1000 - 1)).reject { |i| i % 5 != 0 && i % 3 != 0 }).inject(0) {|a, b| a + b}
  2. http://pastie.org/1273527
  3. http://pastie.org/1273740
  4. http://pastie.org/1285750
  5. http://pastie.org/1290420 Code blatantly stolen from 17 Sep 2005 03:20 am post by Olath at http://projecteuler.net/index.php?section=forum&id=5 (can't access if you haven't already solved the problem) ... yes there is a discrepancy here. :)
  6. http://pastie.org/1285746
  7. http://pastie.org/1293957 (stolen from forums after getting answer)
  8. http://pastie.org/1285739
  9. http://pastie.org/1293953 (All mine. I'm proud of it. It runs pretty quickly. finding an answer took me several tries for some reason.)
    rancorbeast beat me by miles with the oneliner below.
    (1..500).each {|i| (i..500).each {|j| if i + j + Math.sqrt(i ** 2 + j ** 2) == 1000; print i * j * Math.sqrt(i ** 2 + j ** 2); end } }
  10. solved in python.
Euler 11..n will be in a new post.