Home

Advertisement

Customize

Titivillus

Jul. 10th, 2009

04:16 pm - More politicians and business leaders wanting idiot savant slaves...

The only good news is that USA Today at least questions their assumptions: Scientist shortage? Maybe not:

John Holdren, Obama's science adviser, disagrees.
He says he's "optimistic that the jobs for them will materialize."
"Obviously we've suffered in the past from a boom-and-bust syndrome in funding for science and technology," he says, "and we're looking to try to avoid that going forward."
Holdren says he has considered "the size of the pipeline vs. the size of the market," but he and other administration advisers are convinced the USA needs more — not fewer — scientists and engineers. "More and more the challenges we face are going to require big infusions of science and technology to get solved."

And of course, this was via a hacker news thread, and the current first comment is something I myself have basically said in the past:
There is no such thing as "shortages". There may not be enough of something at a price YOU are willing to pay, but that doesn't make it a shortage.


So where did I get the idiot savant line? Well, its obvious, all these business leaders "need" people smart enough to be an "engineer or scientists" but simultaneously dumb enough to work for them for $5/day.

04:01 pm - Nice list of SQL anti-patterns.

SQL Antipatterns Strike Back. Most of it was fairly well known to me, and its not excessively "MySQL" specific. The only real "gripe"(having skimmed most of it) is the section on trees. The closure table is a nice idea, but some(e.g. PostgreSQL) databases now support WITH RECURSIVE common table expressions, which allow you to do exactly the "unbounded/unknown" list of queries to join on in one of the other sections developing queries/structures for trees.

Anyway, some of those anti-patterns are kinda scary(in that, I've never seen a fail-whale like that in person, and hope I never have to). Most of the anti-patterns I see can be summed up as "treating the database as a dumb persistence engine"(i.e. You mean I can do more than just "SELECT * FROM table"?).

03:25 pm - Peasants and Income Taxes...

Reversed Psychology: Tax Cuts and Work is an interesting discussion of the idea that (most) people have an "equilibrium goal" with regard to consumption, and that taxes do not affect work how some people(uh, politicians?) tend to think it does. Of course, even if its correct, it does not suggest the proper course of action, or deal with the fact that sometimes societies have to do things that "suck"(like tax people more, or spend less, due to resource constraints, and the fact that the "miracle" of printing money doesn't tend to work as well as some imagine). Anyway, in a related vein, you might find this article: Ford's Paradox to be interesting as well, discussing how Henry Ford actually decided to pay his workers a real wage, rather than "the least he could get away with" and why that was only "enlightened" self-interest, because many business owners are too stupid to understand basic self-interest.

Of course, to go even one further, I've been observing a twitter debate with zedshaw and amrithkumar. amrithkumar links to his blog In defense of employee non-compete agreements that basically says someone might get tired of him failing to implement his idea, and quit and actually build it. Indeed, I can see his point. I wrote 95% of a Meter Data Management System for some idea people, and they have stuck it up their asshole while the market moves past them, and it would be horrible for me to rewrite an implementation of my first draft I coded for them(with little input on features either time around) and go sell it while they sit on it.

Zed's arguments, which I quote without permission here, sum it up nicely:

Because in a knowledge economy, the "factory" walks out the door in the worker's heads when you piss them off.
@amrithkumar Ultimately, this is to maintain the industrial revolution in the face of the means of production being owned by the workers.
@amrithkumar Additionally, if the knowledge is worth so much, why is the knowledge worker *never* paid for their knowledge?
@amrithkumar California proves that assumption wrong, repeatedly. All a non-compete does is turn knowledge workers into slaves.

So yeah, I totally agree with Zed. I also find it ironic that most of the Southern states brag that they are "right to work states"(i.e. unions can piss off), and yet, non-competes are legal here(which has most definitely impeded my right to work twice in the past 2 months).

And to go one better, I'll even mention Neal Stephenson(uh, spoiler warning),Read more... )

Jul. 5th, 2009

10:44 pm - I want to elucidate, but eh, whatever...

Say Hello to Underachieving. Excellent comments. Unpaid internships are a form ass-biting exploitation.

10:33 pm - The inanity of computer science...

On computer "science". I link to this because I agree with most of it, and frankly, this is coming from someone who has a great deal of use and respect for the high ideas in computer science. For instance, his criticism of robots: Every robot I have ever seen discussed in college was a damn remote controlled car. Pathetic AND retarded. I have seen someone argue for using "Model Driven Architecture" to define a million line of code system to control a line-following robot. Most Electrical Engineers would use a $0.05 PID controller(google the wiki if you don't know...). Anyway, I also have a heretical belief that the best computing scientists are inherently cross disciplinary(now, before this comes off as too bad, I have several friends with pure CSC degrees, guys, I'm not talking about (most) of you, and trust me, plenty of outsiders are complete retards as well...).

Of course, criticizing the field will get me nowhere, because at the end of the day, I'm an outsider to it, but anyway, its got some points, and AI is of course, but then again, all this is why I argue for formality, proofs, and formal systems. Why? Its to easy to get away with detail eliding handwaving in which everything sounds plausible. Sure, "math"(and my favorite area, Mathematical Logic) is hard, but, uh, that's why we're supposed to get paid the big bucks.

10:26 pm - Essential America...

America's Place In The World. Frankly, I can't find a money quote, because nearly the whole essay is a money quote, but he definitely nails it. Ironically, despite my frustrations and vitriol, I find that he would likely agree, I'm clearly an America. America is an idea, of course, has been true for a long time, and we're clearly insane, for some definition of it, and I assure you, tomorrow, I will be cursing the idiots I'm surrounded by just as much as I was today. Even that contentious constant fighting is typically American. Of course, I would argue that a bit of a insanity is essential to a long term winning strategy...

Jul. 3rd, 2009

10:21 pm - Open Platforms Part 2.

Android vs. iPhone from a developer's standpoint. Of course, the "market" for Android is small, but what I find interesting, and not many people are talking about this is the role of the cell phone companies.

You see, while Apple is not particularly open at all, the telco's make Apple look like Richard Stallman. My hope is that, much like Amazon now sells DRM free MP3's, Apple will force the crack open to other companies. In this case, Google's Android, which is a true mostly-open platform: Linux kernel, and a mostly-JVM compatible runtime system(also open source). And even better, their app store is no-approval-required(And optional to boot...).

So, I do hope that in the long run, Android is a winner(I was rooting for OpenMoko, but, eh, Android is in the ballpark...), and if/when it is, I will get back into mobile app development.

04:36 pm - Peter Principle got you down?

This is one of those cases where the science is a "duh", but still, its important to have research to validate stuff like this. Eventually you can pile the papers on the MBA responsible for ignoring it and suffocate him(literally...) under the load.

Anyway, Solving the Peter Principle? One Word: "Darts" by Paul Kedrosky is fun, but I have another suggestion. Part of the problem is that people want to better themselves in life. In particular, engineers are often accused of being promoted to management for being "good" engineers, which really has nothing to do with being a "good" manager. In fact, many engineers go get MBA's for exactly this reason: To get in to management.

So why do they do that? Well, you see, at some point, you have a spouse, and a kid or two, and maybe a mortgage, and so you want to get some better pay, better respect, and a job where maybe you can work an 8-5 shift so you can spend time with your family. And of course, doing actually engineering won't get you that in a lot of companies, so engineers start seeking promotions.

The only real way to prevent behavior like this is to stop incentivizing people to do the wrong thing(Get a promotion for a job they would be bad at, so they can get a pay increase). Of course, an upper level manager would never do that, because lets face it, most business people hate technical people.

The flip side of it is a problem we're increasingly running into with our employment situation: No one wants to take a "risk" on people, and we've turned hiring into a bit of a lemon market, and a market for revealed talent, i.e. let someone else take the risk and pay the price for getting "revealed" talent, but since no one wants to take the risk, the market of "talent"(that we know of at least) eventually dwindles and drives up the price of talent. Of course, this also ignores the cronyism that goes on at all levels too.

And the final insult to injury: Recruiters as "market makers". I don't know how many companies hire programmers in Knoxville, but I do know this: there are about 3 recruiting companies that handle most of them, and none of those recruiters like me. I can't imagine that that makes distortion in the market...

Jul. 2nd, 2009

09:52 pm - Open Platforms Matter...

But then again, I guess some people like getting corn holed by Apple: Trust, hostility, and the human side of Apple.

FYI, I know some of you know I use Java. For the record, I didn't start using it for personal projects until it was GPL'ed. Yeah, that actually mattered enough to make a decision. Oh yeah, it didn't have to be the GPL either, just had to be "open" for some suitable definition of open.

01:33 pm - Grit yourself out of my face...

Excellent, apparently I can claim to be a gritty SOB. Now GTFO.

Jul. 1st, 2009

03:13 pm - WITH RECURSIVE ....

Swweeeeet... PostgreSQL 8.4 is out and it has support for WITH RECURSIVE which can be used for computing transitive closures of relational algebra expressions.

In plain programmer speak: You can now represent a tree in SQL and find ALL children of it(not just it its immediate children). So go forth and write all those message forums you've wanted to write all these years, but didn't because you had to find all the children of the nested messages in a loop of SQL :).

Also: MySQL sucks.

02:58 pm - Finite State Machines rock...

Someone on Hacker News started a thread about Zed Shaw's article on Ragel State Charts. And of course, I think Finite State Machines are a little neglected for their marvelous uses in software engineering. This also has a bit to do with the fact that they are not always suitably easy to express in modern programming languages(however, Java 1.5's enum's are one excellent way if you're in the JVM world...).

Anyway, one reason I saw fit to post on this is that the Hacker News thread reveals an interesting trend: Most of the people who are "underwhelmed" have an EE background. And of course I too have an EE background(ironically, I have also implemented several finite state machine compilers over the years). And yet, ironically, finite state machines seem a bit "low level", and yet, that is likely because of all of us EE's(Even though most of us should know better...).

The most "abstract" uses of finite state machines are great for solving some gnarly problems: parsing, message passing protocols, role-based security, Leslie Lamport's famous Paxos consensus protocol(which is in use at the heart of Google, Amazon, and Yahoo's computing infrastructure) is all about making a distributed finite state machine.

Unfortunately, since my laptop battery is low, and my cell phone connection slow, I'll cut this short and mathy: The states in a finite state machine can be used to create an equivalence relation over an "infinite" state space, and model transitions between those equivalence classes. So, for instance, a "role based security" model might have user id's as part of their state space, and tucked away as a parameter somewhere in a class, but overall, you have roles as states, and while the user id tucked away controls db queries and such things, you behave in a uniform way "modulo the user id", and thus, it greatly simplifies your code.

Jun. 30th, 2009

10:23 pm - IP Law and Employers.

Personally, I'm completely paranoid about employers both "traditional" and contracting employers even trying to make IP landgrab's against programmers. Of course, this is very unfair, but our society has shown a large degree of callous disregard for the "little guy"(personally, I think a large element of our economic trouble can be traced to this too), anyway, some people "get it", others say "that's stupid, companies never sue their employees over this sort of thing". Anyway, here's an interesting thread about exactly this subject: copyright, trade secrets-how did the weekend hobby get destroyed.

09:25 pm - More on modules...

Gilad Bracha writes about a ban on imports, which of course, is not about free trade, but module systems in programming languages. This is pleasantly well timed, since I've been rambling about it a bit lately in Controlling recursion and type systems... and Databases, Hardware Description, and Module Systems(with a dash of the Simply Typed Lambda Calculus).

02:54 pm - Faster than light...

Scientists Make Radio Waves Travel Faster Than Light - Of course, radio waves carrying information is a different matter(and is different from Matter as well). I suspect most people will have problems with this because understanding what exactly information is is a topic most people haven't encountered(and I'm feeling too lazy to quote and explain Saint Claude Shannon on the matter...). Anyway, we talked about this in one of my EM fields classes, so I'm not sure what exactly the news is here, since Sophomore's at TTU couldn't have been that far ahead of the curve. Of course, that hotbed of falsehoods, Wikipedia has some on the matter too: phase velocities above c

Jun. 29th, 2009

03:36 pm - Nonnews: Rich person thinks I should do free labor to make his life easier.

Several rich guys are talking about "Free": Priced to Sell: Is free the future? by Malcolm Gladwell discusses Chris Anderson's book "Free", which of course costs over $20. Hacker News has a thread and I think this blog entry Free content is not born equal sum it up.

Anyway, frankly, I find the whole thing disgusting. Of course, I'm not working on any ad supported Web 2.0 social networks either.

02:03 pm - Airlines suck.

The Bathroom or a Glass of Wine - a good explanation of how airlines hate their customers and the idea of economic complements. Of course, a complement is a product whose supply/demand affects another product(hence, why Microsoft pushes commodity hardware: software is a complement to hardware, and when hardware price goes down, demand for software increases).

12:00 pm - Asymmetric Power

/. is a bit more trollish than it used to be, but hey, whatever. So, I saw this story today: Of Catty Rants and Copyrights, and considering it in juxtaposition with how several large industries use copyrights against their customers and others(Oh how I wish they would be forced bankrupt, if you hate your customers, you do not deserve to be in business). In fact, within 24 hours, /. also had this post: Judge Thinks Linking To Copyrighted Material Should Be Illegal.

Anyway, the powers that be in our society really enjoy pushing things and squishing and screwing. Marx was wrong about the proletariat, but still, you can push too far, and once you do, the streets usually do flow with blood.

02:25 am - Twitter: A more efficient way to spam.

I think I finally know what will eventually kill the "closed garden" web(Twitter, Facebook, etc.): Spam. How so? Well, its easy to say that "open" stuff like email must "always" be vulnerable to spam, but really, spam is essentially an economic problem with an added desperate-ponzi-scheme side to it.

In fact, as an aside, I discovered that another "laptop" person at a restaurant I frequent is a spammer, I discovered this in a discussion with the waitress about what it is I "do" on my laptop. BTW, apparently saying your a "software developer" is about like saying "I own unicorns", but enough of that.

So, back to the "closed garden" stuff. You see, spammers will always be motivated to find a way around your countermeasures, and in the arms race, you have to eventually accept that "everyone" will be able to figure out what spam is much more efficiently than your employees inside your garden. And by everyone, I don't mean "crowdsourcing"(crowdsourcing is highly overrated as a form of magic fairy dust to fix ALL problems...), what I mean is that allowing people to have a diverse setup of infrastructure and interject their own approaches at various stages is why email has been so resilient. Well, for some people. Other people have email servers ran by such incompetent hacks that they cannot reliably send or receive email at all, but that is a price to be paid(that price, for reference, makes up for the complete lack of pay involved. I know for a fact that a school system nearby was looking for an IT guy for $14,000/yr. Their system deserves its epic fail status.)

Anyway, so what does this have to do with Twitter? Well, I made an account(and know, I'm not telling what the account name is), and so far, of the 5 followers I have, 4 are spammers(so, I told one person, but it was a high pressure moment... :) ). I have made ZERO tweets(And don't intend to make any for the near future), and frankly find that I have no regrets about sticking to my tl;dr format.

01:36 am - Crazy Awesome Engineering.

The Surreal Appeal of the Falkirk Wheel - So this is like a Ferris Wheel for boats. That's awesome.

Navigate: (Previous 20 Entries)