Archive for July, 2008
You know what’s missing from this post? An optical drive.
I thought I could just steal one of my roommate’s, but it’s either broken, the disc I burned is broken, or the hardware is fucked. I slapped a FreeBSD harddrive I had in there and it booted fine… until it tried to mount the drives (it magically didn’t detect any geom-managed drives). Which makes me a bit worried… it the ATA controller flaking out?
Also that 8800 GT card I got is fucking huge. I haven’t had a graphics card since my old Radeon 9200, and I must say — they’ve certainly changed a lot over the years.11 comments
So I was in a meeting today, and I realized something — all the technical people sat on one side of the table, and all of the non-technical people sat on the other side of the table. I didn’t notice this before because I never really knew how untechnical some of the project team were until I had to explain some basic things during a presentation today (or maybe I’m just a terribly scatterbrained presenter).
In any case (and despite some objections), I’m going to go ahead with my project at work to write a lightweight workflow engine with Fails. It’ll be enterprisy as shit, but at least I can make something more functional and better documented than the shit we’re currently planning to use.
It also gives me an opportunity to reconcile my differences with the ActiveRecord package that’s bundled into Fails. Honestly, the entire active record pattern pisses me off a bit — obscuring the beautiful things that RDBMS’s are with their fucking nasty OO bullshit. The schemas that ActiveRecord tends to generate get pretty nasty, especially when you use some of the polymorphic feature shit.
I mean, it’s fine if you’re using the API to access shit, but honestly it’s a lot faster to just fire up a database client. Unfortunately, it sometimes takes while to figure out how the tables are related…
SELECT f.pid FROM features f JOIN feature_names n ON f.id=n.feature_id JOIN feature_name_relations r ON r.parent_node_id=n.id JOIN simple_props p ON r.phonetic_system_id=p.id WHERE LOWER(p.code)='chinese-romanized-other' AND LOWER(p.type)='phoneticsystem';
By no means is it a complicated query (as far as queries go), but it’s complicated as fuck if all you want to get is a list of IDs which have a certain property. And before anyone asks, I have no idea what the fuck this is for, the only thing I’ve touched is the database.
I wonder what life as a DBA is like…3 comments
I’m not quite sure how, but I haven’t been fired yet. My supervisor said to someone else (while I was present) that I was doing a “great job”. Doing what I can’t imagine, since I typically spend most of the work day browsing the internet and reading random documentation. I wonder how long I can continue pulling this off…
Stupidity aside, it really makes me wonder when people do or don’t do things for no specific reason. I was talking with one of my bosses about something or another, working through some source in vim. She was at the wheels and we needed to copypasta some shit from another file, so I told her “split the window and open that other file.”
And she just gave me a blank stare while I explained that vim supports multiple windows, how to pop ‘em open, resize them, switch between them, etc. Apparently she’s been using vim for years and never knew it could do that.
So then we get to actually copying the stuff, and she starts counting out lines on the screen. I ask her what she’s doing, and she tells me that she needs to know how many lines to yank. After teaching the goodness of the mark command, I felt kind of silly.
Anyway, the point I’m taking this is that it seems people just blindly use whatever the fuck they want without actually understanding why it’s used or not used. I have to do a lot of work with Ruby on Fails (the documentation for which is largely distributed between screencasts and blogs) and it always pisses me the fuck off when the commentators say stupid shit like “OH AND THIS IS SO GREAT BECAUSE YOU DON’T HAVE TO TOUCH THAT PIG DISGUSTING SQL.”
They then go into a tirade about how the ActiveRecord shit works seamlessly on a shitton of RDBMS backends. Well, no shit! Almost all the shit it does is completely standardized. Sure, there are slightly different notations for things like auto incrementing the primary key, setting foreign key constraints and fulltext searches, but fuck. It isn’t like SQL is some cockatrice corpse that’ll fucking turn you to stone if you ever touch it.
I feel like you sacrifice so much fucking functionality and usefulness of the backend when you use all of that goddamn bloaty abstraction, just so they don’t have to read the fucking manual. What’s more, they for the most part don’t really seem to grasp when they would and wouldn’t want to use SQL — ActiveRecord is just some magical silver bullet which will make their fails magically (a term often encountered) be more enterprise-ready.
Or maybe I just have a fucking lizard corpse in my back pocket, I don’t fucking know.6 comments
- CPU INTEL|C2D E7200 2.53G 775 45N R – Retail (Qty=1, Price=$124.99)
- VGA EVGA 512-P3-N801-AR 8800GT 512M – Retail (Qty=1, Price=$149.99)
- MB ASUS P5N-D NF750I SLI 775 RETAIL – Retail (Qty=1, Price=$149.99)
- PSU CORSAIR|CMPSU-750TX 750W RT – Retail (Qty=1, Price=$119.99)
- CASE ROSEWILL|R5604-BK RT – Retail (Qty=1, Price=$59.99)
- Total: $616.91
Throw in the 2x2GB + 2x1GB of RAM left over from Suigintou’s failed upgrades and a shit 250GB PATA drive (going to use a networked RAID-1 array for most of the shit) and you’ve got our house’s new communal gaming rig. It isn’t top of the line (because lol expensive as shit?) but it’ll certainly perform much better than the shitbook pros and shitbsd machines that we all have.
If I ever need to beef it up, I can swap in a Q6600 for that E7200, or add in another 8800GT (lol SLI). Depends on what bottlenecks first really.
Also I’ll be eating a lot of rice for the next two weeks.6 comments