http://leahculver.com/2008/11/25/couchdb-documents-python-ob...
http://leahculver.com/2008/11/25/couchdb-documents-python-ob...
Naively posting about one or two topics says little about one's programming ability, and much more about one's willingness to be open. It would mean a lot more if Pownce wasn't any good. But it was featureful, it seemed to work well, and quite a few people liked it. Dissing Leah for posting a few silly things is just nastiness.
and i don't see any evidence that leah had that much to do with pownce's features. if her blog is indicative of her code, my first guess is the other pownce people were doing all the work.
I've written a lot more code that's both more convoluted and didn't work. I'm not judged for this, because I don't often talk about it. But people should have the right to be occasionally mistaken on their own blog! I don't think the presence of such mistakes takes at all away from accomplishments.
Hers is basically a coded version of what you'd do manually, eyeballing past the decimal. She's more familiar with string conversion than ceil, floor and round. So? That merits public judgment of incompetence? Of being an impostor?
Yes.
I am not trying to be nasty here, but code like that makes me cringe. And yes, if I saw code like that, I would make a strong presumption of programming incompetence.(which is all right. Not everyone has to be a good programmer. As pxlpusher notes above, "get it done" competence is often more valuable).
Since it was publicly posted code, I don't see a problem with "public judgment" either.
"Of being an impostor?"
No. Programming Incompetence != Being an impostor. Anyone can be genuine and incompetent in a particular skill.
So judge that code. There simply isn't enough information to presume programmer incompetence (let alone make a strong presumption).
In my experience, code reviews are humbling to one and all: Bear that in mind before you raise charges of incompetence.
Sure, but as someone said above
"I agree in theory, but ... converting a float to a string to compute an average?"
We'll have to agree to disagree on whether code like this indicates programmer incompetence. To me, it does. YMMV.
I like beautiful, elegant code as much as the next person. But I've done worse than this, often on purpose, in the name of just getting something working.
However, I can't say I haven't said embarrassingly stupid things from time to time...OK, at least not since treating ADD, but still...nobody's perfect. I would also like to point out that there is merit in the approach she took, in that she just got it done instead of hesitating and thinking over what the optimal solution would be. A good example of iterating on a functional original.
The CouchDB post is about someone writing something others might find useful, acknowledging that it might not be the best solution, and graciously accepting corrections from others. In short, everyone's a winner.
The rounding number post simply reflects that the days where a computing bachelors was taken under the Faculty of Science have long since past.
We've all written code that was stupid beyond all comprehension - even PG will cop to that - so never having written bone-headed code isn't a prerequisite for being a good programmer (edit: the opposite is probably true). You need to judge a body of work.
But think of it this way, your "hacks" will keep getting better and better and cleverer and cleverer.
I heard a (probably apocryphal) story about Picasso being asked to sketch something at a restaurant once. He obliged, and doodled some lines on a napkin. Then he asked for a lot of money for it. The lady balked and said "but it only took you a few seconds." His response? "It took me 40 years."
Decent blog post on the topic. http://www.ianlabs.com/2007/04/01/inherent-value-in-design/
So she isn't the next guido van rossum, but if any of us ( maybe even guido ) posted our thoughts, code examples, and solutions on a blog there would be many examples of less than ideal or poor code.
While I thought Pownce was useless and never used it myself, it was a good-looking product and it had a nice layout. Six Apart would do well to learn from the Pownce team about making a pretty product.
> I’m a founder and the lead developer of a social network, Pownce, that lets you send stuff to your friends online.
stop wasting the precious hours of your life
good god please bury this term, the yc fanboys have turned the "startup" lexicon into such a shallow cliche that its almost at the point of parody. you don't have a "cofounder", what you have is a guy down the hall in your dorm
I can't think of anything else I'd want to spend my freshman year on.
try your homework, it'll pay dividends unlike yet-another pointless website
I'm maintaining straight A's, partly because I'm in a set of programming-intensive classes. I do both at once.
My site won't be pointless. It appeals to a niche that hasn't been appealed to yet, and we've got a non-community driven revenue plan. The goal is that even if our community doesn't start off strong, the technology driving the community will.
Project work shows initiative at the very least. But again: I'm not doing it for a resume. I'm going it because I have a good idea and I want to realize its potential.
why are you telling me this? just drop the fuck out now and save the money you are pissing away on tuition if you are convinced its all just a waste of time
but get used to being self-employed, because without that degree you won't even get through filter0 for any recruiter or hiring dept. hard to tell a cto how smart you are when the HR staffer shreds your resume because your last education is high school
This is not to say grades are entirely meaningless, though. I've definitely taken a few classes where getting an A took more than obedience.
there were also many cases where i've felt that getting a higher grade would mean i'd end up learning less - as in, i'd focus on completing projects/assignments/memorizing what's needed immediately for the test vs. focusing on truly understanding the material and how it would apply to the real world.
this quarter of graduate school i'm also taking twice my normal load while still working full time: reason is one of the courses i am taking is only offered once every few years. this could mean a lower grade, but i'd end up walking away with greater knowledge.
I still think that projects are more valuable on a resume (or, I'd look at them more if it was up to me), because with a project you can see exactly what work was done. I can see something somebody made and understand what they place emphasis on, what details they skim over, and - to some degree - what taste they have in certain subjects. It's not valuable just because it's on the paper, but because you can glean more from a project than you can from a grade point average.
Also IMHO college/university has to be one of the best places to meet like minded people.
If your aim in life is to work at a company where you have to tick boxes and go through a hiring dept which hires you based on some grades, then sure - get the grades.
Personally I've never been at an interview where they care what grades I've got, they care what I've done, and what I've built.
I'm the CTO for a 20 person startup. I only went to one year of college. Art school even.
Went to an art school for their writing program (wanted to be a writer) and they cancelled it the year I got there. I sat in the computer lab (this is 1993) and taught myself everything I could about anything related to computers. I mean I literally hung out in the labs for 12-14 hours a day.
I learned to write software that year using SuperCard and writing extensions in Pascal. My college was the second college in Minnesota (the U of M being the other) to get internet access. No graphical web yet and you could only access it on NeXT boxes, of which we had an entire lab.
Wrote what I can safely say is the first graphical instant messenger application. Worked on the local LAN via AppleTalk. It didn't catch on, but when I saw ICQ several years later I kicked myself in the pants for not pursuing it.
I got kicked out of school for not going to classes but was offered a job in the labs by the dean right after he booted me. I turned it down.
Six months later, a professor tracked me down and hired me to work at his digital photography studio (one of the few to have the hasselblad $15K digital leif-back). Built my first website in 1995, three days after Netscape 2 was released.
Haven't looked back since.
Some people do need to go to college though. Some people don't. Timing is as important as the ability to teach yourself. Being OCD totally helps. Ambition, timing and a little luck are the most important things.
YMMV.
take something away from undergrad: if you want practical experience work on business-wise pointless but technically interesting projects (just for yourself) or open source projects. take the time to learn mathematics (calculus, calculus-based statistics), electrical engineering and physics: web fads come and go, but solid scientific knowledge stays with you.
My co-founder (apparently that term's inappropriate now) is very much a math-and-science person. I'm not averse to them - I took calculus in my junior year of high school - but at the same time, that's not what interests me. I'm much more an arts person: writing, music, theatre. It's a good combination, because we look at what we're developing in different ways.
At the same time, I'm learning how to program, I'm in a digital arts course, and next semester I'm taking an upperclassmen programming course. I'm not planning to throw my life away on a project. But if I've got a good idea, I'm going to try to implement it. I'm young: I can risk failure.
Sure but don't risk your undergrad. Graduate school is a much better time for this. And to quote DHH, don't treat your life like a planned waterfall project: "I want to do web development, so I will do X, then I will do Y."
I don't think that web development is my big thing. I'm interested in the web, but I'd hate to have to work on ideas I don't love. My current project is something for writers, so it has practical uses for myself as well. And YCombinator summer happens in Boston, which happens to be the place I want to go, so I told my cofounder and we agreed we'd give it a good try.
Important corollary: you'll never have more free time to pursue personal projects than you do in college. You don't need to quit school to find the time to make a popular website (just ask Rob Malda).
but one way to increase your chances of winning (that is, drive a start-up to profitability or a home-run exit) is to get a body of knowledge that makes you stand out from others.
i certainly agree that college is the time to pursue personal projects: but personals means exactly this, personal. work on projects that will teach you the most vs. the projects that seem to be the best from business perspective. you have rest of your life to spend worrying about making a profit.
for 2 years out of my undergrad career i did contract systems administration / internal web app development. however, i've learned a lot more about systems administration. in retrospect, it'd have been better spent otherwise. trying to have personal projects while working full-time and doing a part-time masters is a great luxury.
I think that the best metric is a third thing: "work on projects that you like the most."
I think that the start-up I'm working on will teach me a lot. And it's got more than enough potential to earn me a living, too. But more than that, it's an idea that I love. The fact that I think I can sustain myself with it is an added side effect.
I mean, I won't drop out of college just for the heck of it. My co-founder and I are applying to seed investors, though, and that means we'll spend time on leave from college working on the idea. If we get accepted, we'll work on the project full-time for as long as we can. But if we don't, then it'll continue to be a side project and we'll launch it from college.
It's more that I'd rather take risks early. If I try this and succeed, I have more of a vantage point. Perhaps I'll end up at a better college, at a better program. If I stay in college for four years before doing this, my idea might have been taken, and if my idea doesn't work I'll have to hunt for an alternative venue. Right now, I've got the ability to leave for a little while, then come back, and I don't see why I shouldn't at least try.
Ignoring, for the moment, that a college degree lends you business credibility that's difficult to obtain otherwise, it's important to realize that quitting school right now probably won't give you a strategic advantage. Quit school, and you've got to feed yourself, house yourself, pay the bills and do a million other things just to manage your life. Stay in school, and you've got to do some homework. Otherwise, you're surrounded by smart people, free resources, subsidized housing and food. It doesn't get any easier!
Assuming that you're not going to some ridiculously expensive private school (and paying for it out-of-pocket), I can hardly think of a better place to start a business than a University. I've never had more free time than I did as an undergrad, and I think that others would tell you the same.
And I found it wasn't time that was the limiting factor, it was attention. I found it really difficult to have spare attention to devote to personal projects when I was a physics major, learning CS fundamentals (mostly on my own, but I took some upper-level electives and ended up finishing the major), doing sailing & orchestra, and trying to have a semblance of a social life. Might be easier in a less-demanding major with fewer activities, but I found it a lot easier to do personal programming once I got a job.
* Bill Gates had the resources of an extremely well-connected and wealthy family to hedge his risk. He has also repeatedly and publically advised young people to stay in college, and not follow his path.
* Mark Zuckerburg didn't leave college until Facebook was growing so quickly that he had to make the choice.
* Larry and Sergey were grad students; they were trying to get their doctorates, not their BS degrees.
Ignoring all of that, there's some serious selection bias going on: for every Bill Gates, there are ten thousand droupouts who are flipping burgers.
Right now, I'm learning Processing in one class. I'm not learning anything new about language: I already know Java. Processing isn't used as much, and from what I've seen it's not doing anything that I want to do. We learned Scratch, which is a childish language, and ActionScript, which I've already worked with. I love learning new things; what I don't love is being in a place where I'm not learning and have to do busywork, while I have an idea and think I can mess with it. If that goes wrong, I'll know enough to find a program that teaches me exactly the thing that I go wrong with, and next time I'll be more prepared.
That's not to say everything that you study will be meaningful and exciting. There's tons of busywork in college (especially in the first few quarters, when they're bringing the slow kids up to speed), but that's life! If you think you're going to escape busywork by starting a company, you're being naive.
More to the point, if the stuff you're studying is so boring and unrewarding that it makes you want to quit, then you've got plenty of time to work on side projects while things get more interesting. That's where the free time comes from!
Looking back on it now (and having had to implement many of the algorithms we learned about in that class in C, Java and other languages that are less suited for it), I wouldn't have been able to grasp many of the sorting, binary tree or hashing algorithms nearly as easily in another language.
To my own surprise, one of the things that I now consider most valuable about my undergrad degree was that it forced me to at least grasp Scheme and Smalltalk.
When I see all the posts telling you "what would you tell your younger self", that's what I think (at the age of 25, working full-time while attending graduate school part-time and dating somebody an hour's drive away).
When you're a full time student... you don't know how great being a full time student is in many ways: not a worry in the world, you just manage your course load; you select the time of your courses, deadlines are reasonable and set ahead of time. On top of that if that there are smart and inspiring people for you and plenty of courses that you can take just for the hell of it (I really miss taking history and philosophy courses).
Of course it's easy for me to wax nostalgic about the great college days when I just drove home (to an 830 sq ft apt all to myself!) in a sports car I purchased new, after dinner at an upscale Indian place -- I am tempted at times to just take a leave of absence from work and do graduate school full time -- but once you're used to a certain lifestyle it's not easy to go back and cut your spending drastically.
Looking back I regret not having pushed ahead and taken that leave of absence because working even for one year in a company makes one appreciate the subjects of the classes in college much more... And I feel part of the classes of college were wasted on me because I lacked the experience to appreciate them
Before you make this decision, you should talk to people who tried. However, as I've said, life isn't a planned waterfall project. You seem bright, focused and most importantly confident.
I guess what I mean to say, don't come away from this knowing _nothing but_ web development (whether with a degree or not).
When I was an undergraduate, systems administration was all I wanted to do. Then all I wanted to do was backend web-development. Now I've realized that both of these are just narrow technical skills that anyone could do, but I am no longer nineteen (yet luckily, I'm also not 30 yet).
It's not just "knowing how to make a dynamic website", too; in fact, after I finished, I vowed never to use PHP again. The most valuable skills I got from FictionAlley were all soft skills. How to balance a dozen different feature requests and pick out a design that isn't what anyone suggested but satisfies them all. How to diffuse a massive PR disaster. How to deal with a completely unreasonable customer. How to make your life a living hell by promising features to users before they've been developed. How to (roughly) estimate the time a project will take (if you're just starting out, expect it to take roughly 10x as long as you expect). How to build things incrementally so you get to the finish line eventually.
I picked up a couple useful technical skills too; I learned all my UNIX, SQL and vi skills from that project, along with softer technical skills like how profiling, logging, optimizing, diagnosing performance problems, etc.
Most of this, you simply can't get in college. The projects are not of sufficient scope. You'll never have an unreasonable customer for a homework assignment, no matter how much you hate your professor. ;-) You probably won't have to maintain code that you wrote 3 years ago and can't stand now.
Heck, most people don't get to deal with that at work until they're in their late twenties, or even well into their thirties. I have older alum friends that graduated before I matriculated, and they're just now getting into positions where they have to balance competing tradeoffs between different groups.
I actually risked my degree a whole lot more than unalone is doing - I was a physics major, and it's a lot harder to do dynamic web programming + upper-level physics than it is to do dynamic web programming + CS. It ended up working out for me (after a really nerve-wracking last semester) and I got the degree, the fundamental math/physics/CS knowledge, and the experience of working on a fast-growing website. But if I had to drop one, I'd say drop the degree, get the fundamental knowledge from textbooks, and do the project.
Your interface was one of my favorite FF ones. I liked how you sorted by author name rather than genre: it put the emphasis on the writers, which was really neat.
It's funny, in the "When will you consider yourself a success?" thread, I was thinking that my answer would be "When random people I meet say, 'Wow, you built X! I use that all the time' where X is some project I've done." It's really gratifying to hear someone using it.
That is so cool.
I tried to check your profile but it was empty.
Reviewers - except when on industry-formed panels - are rarely any good at producing what they're reviewing.. that's why they're reviewers.
Democracy relies on this concept of making crude judgements. The "Bush sucks" and "Liberals are socialists" nonsense is crass and often wrong, but people do think that way when voting. If we had to understand politics, economics, and government to a truly informed level, turnout would be in the single digit percentages ;-)
Thankfully, he got voted down to oblivion - so it seems like the majority believe it was a cheap shot and not worth paying attention to. Doesn't mean he was any less qualified to express the opinion though.
this is like a fast-food franchise owner who consistently serves poor quality food saying an expert chef (who, however, only works in a gourmet restaurant but has never run a restaurant himself) has no right to criticize their food quality because he isn't running a business.
the parent is disputing whether the acquisition for "the talent" in this case makes sense: your rebuttal here seems to be circular "6a acquired pownce because pownce founders are talented. pownce founders are talented, because they made something that got acquired by 6a".