Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: The rising “Hackathon Hackers” culture
251 points by haskellvilain on March 15, 2015 | hide | past | favorite | 153 comments
I am an american CS student that goes to (a lot) of hackathons. The purpose of this post is to get feedback/opinions from people that are outside the "Hackathon Hackers" bubble to determine whether or not my rant is founded and if the issues I am highlighting are characteristic of the tech industry.

It bothers me to see how obsessed with success this generation of "hackers" seems to be. I have met people who were justifying censorship, population control and unfair business practices because they could benefit from them someday. I was expecting a little more regard to civil liberties and ethics from students and so called "hackers".

People win by making "cool" apps (Uber for X) whereas technical hacks are totally ignored.

I am glad that people are motivated to succeed but this lead to some of them taking themselves very seriously. Often to the expense of ethics.

"There is such ignorance in this world about who we are. We are not criminals. We are innovators. We create things. We change the world.[...]"

And this is one example among many other from a guy who has never engineered anything. Weeks are spent planning for their new "great project" with at the end little to no execution.

Students who believe to be 1000x SE because they can stick two APIs together and use bootstrap end-up to be very condescending older engineers.

This "bro"/"my framework is the best"/"Make money fast" culture that stinks a little bit IMO.

Hackathons are great to try out new technologies, meet new people and outreach to demographics that are traditionally under-represented in CS but I don't like where this is headed.

Like HS there is "cool kids" who are "Student Entrepreneur" or "Innovator, UX Artist blah blah", "RoR Genius" etc... and the rest of the world.

My apologies if this post is a little bit ranty, I hope to get other perspectives on this.

We hired a dev that's very much like you described. We "knew" he was smart because he did well in some Hackathons. Had built some cool projects on his flashy portfolio. Went to the same university we want to, which is a top university in the world. Had good grades at said University. etc.

He had all the markings of being a fantastic intern for us.

About half way through his internship we had to fire him. He lacked the attention span for a long term, rigorous software development project. We later hired someone whom we evaluated very differently and it has been incredible. He's doing a fantastic job. Constantly questions our opinions about software and pushes the boundaries of our depth of understanding.

To add to this, we knew the fired intern went on to another startup to keep doing whatever it is he thinks he's doing. The founders of that company ended up telling us the same exact problems were happening with them. Don't worry about these "hackers" and what they're doing. They'll all end up getting a reality check at some point. If they frustrate you, then just remember that the best revenge is living well.

FWIW, In the games industry it's fairly common practice to totally ignore anything a potential programmer made in a game jam (unless they carried it on afterwards).

Feels somewhat equivalent, even though it's probably for different reasons.

Why is it that it's common practice to ignore anything made in a game jam?

What ryanthejuggler said is true (and mainly why even impressive ones aren't worth much), but mainly because game jam projects are usually unimpressive and made of gluing a bunch of things together.

Totally ignore is probably stronger than I mean, I take a look, but I don't think it's ever strongly effected my decision.

I also can't speak for the entire industry, this is just what I've seen where I've worked.

Considering "he lacked the attention span" in GolfyMcG's comment, it shows the dev can create, but doesn't demonstrate any long-term follow-through or team dynamics.

How did you evaluate the other person?

Sorry for the lack of reply.

We started by assuming most of what we saw on paper lack credibility. We questioned their abilities, in a friendly way, and made sure they proved to us what they claimed. We also cast a wide net - we didn't just assume because we liked someone at first that we should just wrap things up. That candidate was the best of maybe 3-4 people we brought in for in-person interviews. Instead of 1 intern candidate whom we felt we knew.

This is so true. Steadily working on a long-term project is so much more valuable than writing shitty code that you won't look at again for 24 hours every few weekends.

Penn's hackathon is by application only. I think this is pretty silly. Here's a quote from a Medium post by one of the event organizers announcing this year's low acceptance rate of 30% [1]:

  The people that got in had almost all either won major hackathons before or 
  worked on multiple projects that each blew our socks off in a spectacular fashion.
I'm just trying to imagine these kids at Penn sitting around a table deliberating which applicants have the most "major" hackathon victories and most "blew our socks off" projects:

Organizer #1: This team looks promising. They placed second at the State U hackathon last spring!

#2: That's not impressive. Everyone knows that StateUHacks is a third-tier hackathon. A monkey with a rotary phone could win the Twilio prize there. Who do you think we are, Cornell? This is UPenn; we accept elite hackers only. Only the cream of the crop from HackMIT is good enough to don Dropbox t-shirts with us.

#1: Ok, how about this girl? The side project she submitted under the "Supplemental Materials" section of our application looks pretty good.

#2: As IF! I'd give that side project a 4/10. No infinite scrolling? What a waste of my time. And look at that .ly TLD. It's like, "HELLO, 2012 is calling and asking for its domain name back," am I right?

[1] https://medium.com/pennapps-x/pennapps-x-application-stats-6...

To be fair, if you're criticising selective hackathon idea, you have to go all the way criticise the whole competitiveness of hackathons altogether. Because "selective hackathons" are just a logical continuation of the idea that hackathon can be won. Personally, I don't yet have a definite opinion on the whole matter, but you certainly can't be OK with one thing and be opposed to it's logical conclusion.

Yes, I think that the idea that a hackathon can be "won" is silly too.

I am one of the founders of Hack the North (in Waterloo). We completely agree. In fact, last year we didn't offer any top prizes. Instead, there was a "top 10" which got to present their hacks to everybody. This kept the event fun, and not competitive.

As a member of the team that "won" that hackathon, I agree.

Interestingly, one of my least-favorite parts about "doing well" at hackathons like these is that I don't get the opportunity to go around to other tables and see what everyone has else made, and talk with them about it. Sometimes, really cool projects and people go under-noticed (I've been there as well).

But would you go to a hackathon with no prizes?

Uhm, to create something? For challenge? For fun? That's what hackatons and gamejams are for, aren't they?

But I have to admit that sometimes there are pretty nice prices - like on the last gamejam I attended there was an organized trip to bigger gamejam for the winners (except of small stuff like T-shirts). There were no judges, all attendees voted on their favorites. That's in my opinion the true hackaton/gamejam spirit.

Another hackathon attendant here.

I would attend a university sponsored hackathon that had little / no prizes. I would not attend a corporate sponsored one with bad prizes.

For example, AT&T recently held a hackathon in Atlanta. The prizes were meager, and it was clear to me that ulterior motives were present. Why would anyone attend a hackathon like that is beyond me?

I took home first prize at a AT&T hackathon here in Houston and I thought the exact same thing.

A lot of corporate ones are set up with contracts that leave your work at their mercy to continue without you. Unless there's a prize - it isn't worth it with these types of arrangements.

For social good, civil, city government, university etc - I'll do it with no expectations just to make a difference.

In the last year here (Austin), I've hosted a half dozen hackathons with no prizes.. not even silly prizes. It takes minimal effort getting 40-50 people, and some effort to get 100. On the other side, our last major social good hackathon (Hack for Change) had nearly 250 with no prizes announced up front.

(We did award SXSW 2015 badges to the "audience favorite" but that was a surprise at the tail end of the demo time.)

There are two types of hackathons: The Sun and the OpenBSD type. Most of what is talked here seems to be more of the former, but that term can mean two entirely different things.

For starters, the OpenBSD one can't be "won".

I happen to know a few hackathon organizers and have an idea of how these things work under the hood. I wouldn't be so quick to judge. The reason Penn's hackathon is application only is that they literally can only support a certain number of participants. There's a limit to how many people they can feed, fit in one building, control in a big crowd, etc. Some hackathons manage this limit by accepting participants first come, first serve. Penn decided to take what they consider to be the best applicants, and I don't blame them for that. Their goal as organizers is to impress sponsors enough so that they can do it again next year. There's no evidence that this sort of conversation happened.

People are right in criticizing some aspects of the hackathon culture, but be careful about generalizations. For example, HackDuke has taken steps to include beginners with a series of seminars in the off-season (and by offering a beginner prize), encourage projects that do social good (as opposed to just "hacks"), and they encourage people to continue working on their projects after the hackathon is over. Disclaimer: I went to Duke and participated in their hackathons (and greatly enjoyed them!).

I've gotten to to PennApps multiple times and the only hackathon I've ever won is a Codeday, so this scenario that you're constructing is blatantly false. I'm assuming they look for people that will attract big sponsors to their hackathon, and the idea makes a lot of sense. Hackathons can't expand indefinitely, and the idea of having some consistency still makes more sense to me than random selection, which leads to situations where you're not accepted to a single hackathon in an entire semester. Unless you have a better idea, perhaps you should not mock this one?

yeah the selective hackathon is a relatively new thing and kinda stupid - like hackathon organizers have some magic formula for picking winners... dumb idea

Got rejected by several hackathons. Once I was rejected but my friend (similar college, same previous hackathon experience, significantly less experienced than me but is a girl) was accepted. And I just got a summer intern from a well-known tech company a week ago.

Well that is the intended (and worthwhile) purpose of these application systems – to create more diversity.

Especially in an environment where these "Hackathon Hackers" are already so homogenous.

Which further promotes the idea that making decisions based on culture/gender/etc is totally acceptable if they benefit the "right" groups.*

* Depending on whoever is the "right" group at the moment.

Well, no.

The actual objective of the hackathon is (probably) oriented around the group more so than the individuals. College applications work exactly the same way – top schools could fill their classes with 2400 SAT, 4.0 GPA, Porsche-driving philanthropist-of-the-year white or Asian males year after year. But frankly, that school would suck.

A better approach would be to focus on the group. Metrics like: how enjoyable the hackathon was, what cool people did you meet, what did you learn from fellow hackers, and ultimately: how many quality submissions were created. This is ignoring any explicit goals of increasing diversity/inclusion in the field, which is a fairly common theme for hackathons.

One can rightly argue that increasing the diversity of their participants falls well in line with their entire purpose of existing. Even if they're single mindedly optimizing for quality submissions, it's not absurd to hypothesize that more diverse groups create more creative solutions.

It's making a decision on overall group performance, with individuals' culture/gender/age/school/languages/years experience/company background being a proxy for their impact in group performance.

If increasing diversity wasn't an implicit or explicit goal of virtually every hackathon ever, I'd agree with you.

I not arguing against the value of diversity. My point is much simpler and can be summarized from your response:

"It's good to take culture/gender/etc as a factor when choosing who can participate and who will be excluded from your event."

Good or bad, that is the only conclusion to draw.

Ironically does UPenn even have that highly regarded of a CS program? B-school sure, but CS? This really sounds like B-school bullshit.

UPenn's CS program is quite good. Sure MIT/Stanford/Berkeley/CMU might have better programs. But I've heard nothing but good things about UPenn.

The alternatives to a juried pool are (a) first come, first serve and (b) random selection, which would you have preferred in this case?

("Admitting everyone" is simply not possible, there's neither the space nor the support staff)

Both first-come-first-serve and random selection are better ways to admit people to a hackathon than "let's play college admissions committee."

HackMIT came up with a nice hybrid solution this year [1]. Most spots were filled by lottery, but a few were reserved for the first people to solve a puzzle. This left a place for merit --- but, like, actual merit, which is not well-assessed by a 19-year-old college student scanning resumes for "placements at major hackathons."

[1] https://medium.com/hackmit-2014/joining-the-fancycat-club-ha...

I'll just like to point out that no selection system, including the puzzle game, is without flaws and bias. IIRC (I might be wrong) the catmit puzzle was released when most people in the US were awake, which meant it was the middle of the night for me. I was also pretty annoyed that it involved calling a US number.

I think admitting everyone IS possible. It's important to realize that these hackathons spend thousands to fly a lot of out of state hackers in (travel reimbursements). These hackathons will also send buses to nearby colleges, and even colleges out of state (e.g. anything within an 8 hour drive). If they didn't do those things (especially airfare reimbursements - kind of excessive if you ask me, or limiting buses to 3 hour drives) as much as they do now, they'd be able to narrow the pool a lot.

I've been a sponsor at multiple hackathons and have seen how the staff and facilities are already stretched to the limit.

It's unclear from the article how or if they prioritized local people, but from this: "In the end, we accepted 708 students ... Combining these numbers with students from the University of Pennsylvania, we anticipate 1200 hackers will be joining us this fall."

it sounds as if there was a major effort to get local kids involved.

(and it's unspecified of the 70% rejection rate, how many of those were UPenn students, how many were in the greater Philadelphia area, how many within easy driving distance (say, DC to NYC), and how many were further away)

The rejection rate was for non-penn applicants. Any Penn student who wants to can attend.

2012 is calling and skiing for it's domain name back

Love it :-)

>Students who believe to be 1000x SE because they can stick two APIs together and use bootstrap end-up to be very condescending older engineers.

Yeah, I've noticed that younger programmers started talking down to me like my experience is worthless. Then they ask me to debug their code for them.

The frustrating part is that, when I interview, my experience in now-obsolete languages has a value of $0. My skill for understanding business requirements and debugging is mostly transferable, but that doesn't seem to be valued. I understand valuing my experience in older languages at a discount, but I don't understand why it gets a value of zero or negative.

I never saw the point of hackathons, because I'm interested in projects that take more than a couple of days to finish. You can do "Uber for X" in a weekend, but not something substantial or truly original.

I don't know about your specific case but it's typically not the presence old technologies that devalue a resume; it's their presence AND the lack of new technologies that does that, because it indicates that the candidate doesn't think it's important to keep himself up to date regarding the latest developments in his profession, which is a huge red flag.

Just this week we've interviewed a lady for a development position who had a very long career and had experience with not just old technologies such as, I don't know, Delphi, but she taught herself new things as well such as ASP.NET MVC and Node. She is a mother of two yet she has managed to find time to keep her skills up-to-date. Obviously we have offered her a senior position pretty much immediately.

The problem is that there's 100 new things, and it's hard to tell what's going to last and what's just a fad.

Also, once you have a job using X, there isn't much opportunity to get work experience in Y.

I've also have several recruiters say "Learning stuff on your own doesn't count. You need actual work experience in Y for employers to value it." That's hard when you have a job where they only use (somewhat-obsolete) X.

If they had to choose between you and somebody with no programming experience, who do you think they would hire? If they hired you both, do you think you'd get the same salary?

Answers are obv: (1) you (2) no - so your skills are not valued at $0.

I've had several recruiters say they'd rather hire a recent college grad than me, even for the same salary, because I didn't have experience in their specific technologies and it'd be easier for the recent grad to learn.

So I'm less attractive than a recent grad with no experience, which means my experience has negative value.

Actually, it's a win-win situation. Do you see yourself working at a company where most/all your colleges were hired, not because their experience, but because their age?

He is actually doing you a favor (in general terms, since one need food on the table...), and also protecting his company from frustrated employees (like you would, probably, be), since the young guys are able to endure more BS and bad management.

When I see one clueless hiring manager or recruiter, I can easily shrug it off and move on. When I see everyone making the exact same bad decision (your experience is worth zero/negative unless it's exactly the tools we need), then I wonder if I picked the wrong career.

Fortunately, I only need one job, so if 99% of people doing hiring are clueless, I only need to find one who values my experience and ability.

Your age has negative value, not your experience. If that new grad were the same age as you, that wouldn't apply.

Recruiters don't know shit

But they are the gatekeepers for getting interviews and jobs. What does it say for the industry when most of the people who are evaluating candidates are computer illiterate?

That leads to stupid stuff like when someone is hiring for MS SQL Server 2014, and they say that experience in MS SQL 2000 or 2008 is worthless.

Hackathons are a good way to make yourself try to build something in a short space of time with a new language which can teach you more about it than any amount of lessons.

Honestly? You're hanging out with a bunch of ambitious, entry level devs, probably all college students. This is what you should expect from a crowd like this. Take what you need and leave the rest. For more depth and maturity, go to your favorite language meetups and attend/participate in talks from/with folks with some industry experience under their belt. Kudos for having perspective enough to ask for feedback about this. You'll be fine.

I think a key part of the question though is the fact that it didn't used to be just entry level devs and college students at hackathons.

No? Most serious programmers are too busy programming to have time to blow on a hackathon.

The early ones did have serious programmers at them.

My first memory of one is Yahoo using it to get people to use its API in London, about 10 years ago. That was when a web API with major data behind it was an important new thing. The openness was quite radical, and linked somewhat to the open source movement.

We (ScraperWiki, Rewired State...) did a bunch of hack days for mainly philanthropic purposes - democracy, journalism and so on. More recently DataKind does that even better.

Now though it has become so mainstream, there are hackdays everywhere. They're being driven even more by marketing, rather than coding. The original purpose feels lost.

There'll be something else next.

Well, it depends on hackaton. Most of the hackatons now are commercial events, designed either to milk participants for free work or promote some third party services.

I remeber when hackatons were made by programmers for programmers, when they were about hacking on actually cool projects and having fun. Those hackatons had some serious devs participating, because hell, even if you're doing this professionally, you need to take a break every now and then and do something just for fun.


1. Get a PAID internship

2. Get a part time job

3. Graduate

4. Get a full time job

5. Do things for fun that don't involve computers.

The fact I happen to interact with X framework in Y language, running on Z environment has zero relevence in my life. I more quickly ignore people talking about Ruby/Python/Javascript running Rails/Django/Node than the homeless person trying to wash my windshield.

You get too involved in tech communities and you forget what the real world looks like. I've literally met better people while delivering HIV test kits than while dealing with HPC systems. Find good people rather than defaulting to people like you who make money.

Some people are genuinely passionate about computing and for them it will always be more than just what they do to feed themselves. There's nothing wrong with this, and nothing wrong with the alternative, so long as you're effective, happy, and don't delude yourself.

I totally second this. For some people (myself included), technology is a genuine interest - hobby first, money source later. It's totally fine - if someone can be into fishing, why I can't be into programming (btw. I sort of lucked myself into my career - when I was learning to code I never knew that this will be a skill in high demand)?

And out of curiosity, how do you resolve your statements with the fact that you have over 5k karma and over 1k posts on this site alone?

Akrasia? :)

~3 karma/day. ~3 karma/comment. Doesn't seem like that big a deal?

First off, the sentence of "the people who were justifying censorship, population control and unfair business practices because they could benefit from them someday" echoed back the news I remember from 2012 or so which was like "In America, half of the lowest earners are opposed to raising taxes on the rich, because they reckon they will someday get rich and raising rich taxes would mean their children would be deprived of having the possibility of getting rich someday" (If someone could find the link of that news I'd be grateful)

As for the hackers, let's see the distinction between the "hacker" and the "problem solver" Richard Stallman did not only hacked software, he solved the problem of software being unaccessable to everyone. Rich Hickey did not only hacked software, he solved the problem of Lisp being unaccessable to newer generations and platforms. The founders of YCombinator didn't only hacked software they solved the problem of eCommerce.

I actually love the people who stick two APIs together and use bootstrap end-ups to show something interesting because they at least 'do' something. But the problem solvers are always the superior ones and I eventually spend more time following them because I myself have to solve problems in my life :)

Regarding the notion of not raising taxes on the rich, that's coming up every now and again.

From a 1976 musical, for example: "Don't forget that most men with nothing would rather protect the possibility of becoming rich than face the reality of being poor." (Peter Stone)

"Socialism never took root in America because the poor see themselves not as an exploited proletariat but as temporarily embarrassed millionaires." — [likely not] John Steinbeck

I guess from US you see that as something negative; but from outside this culture, it actually seems to be one of the best american qualities, to be honest. You're really lucky if you don't know what's it like to live in a country where all the poor people are certain that things will never change for the best and therefore do absolutely nothing about it.

You're really lucky if you don't know what's it like to live in a country where all the poor people are certain that things will never change for the best and therefore do absolutely nothing about it.

And yet the social mobility in the USA is quite low compared to other developed countries: "Several large studies of mobility in developed countries in recent years have found the US among the lowest in mobility." (http://en.wikipedia.org/wiki/Socio-economic_mobility_in_the_...)

Empirically those countries with a highly built-out welfare system (e.g. those where the economic pressure on the poor individual is lowest) see higher probabilities of those poor people working themselves out of poverty.

You contrast "lazy poor" (that support the status quo) with "busy poor" (of which one in a million manages to leave the poor class).

The quote contrasts "known poor" (exploited proletariat) with "delusional poor" (temporarily embarrased millionaires).

Those are orthogonal: there are enough temporarily embarrased millionaires out there that will never "make it" while self-aware exploited proles can be quite the force.

Unfortunately, http://en.wikiquote.org/wiki/John_Steinbeck#Disputed (but it came to my mind as well)

Thank you!

I think that this is from "From Zero to One" but I am not 100% sure.

Hackathon Hackers is an eclectic group of over 13,000 individuals -- I started it 8 months ago to create an inclusive, welcoming community for up-and-coming hackers.

People come from tons of different backgrounds and this community provides a space where radical ideas are welcome.

You'll definitely find some people with interesting, sometimes scary, views but that by no means defines the entire group of people. "Hackathon Hackers" has over 100 active subgroups that explore a wide range of topics and perspectives.

That said, by creating this space, the issues we face in tech, and in the world at large, are more visible in HH than any other community I've ever been a part of.

Improving the culture will be a never-ending pursuit and will take tens of thousands of young hackers banding together to do so. The issues you pointed out are very real.

It won't happen in a day, but we've come so far in just a few short months and this is still just the start.

A hackathon at a school is going to exist to further the adjenda of the school which is fine, but not anything related to "hacker ethos". A hackathon at an actual hackerspace however will be much closer to what you are after.

Some other folks brought up Startup Weekends. We have them in my town and I've never seen them get anything off the ground. Some of the organizers tried to cozy up to our hackerspace which is fine, but we really had nothing in common. The reality is that Startup Weekends are stupid. It's a nice idea to get a bunch of technical people and investors together to build something, but you don't start a business worth pursuing by committee. You have a small number of folks very focused on what they want and that builds momentum until it can draw others in. By the time outsiders are being attracted there's usually a solid idea there that people are contributing towards. A committee is going to water an idea down until it's a shallow frank-n-beans version of the original idea. The other possibility is that they end up making a new "Uber for X" which never goes anywhere.

But someone with their wits about them can use this to networking opportunity with local tallent. Just don't participate in the main project if you can avoid it.

Hosted a Startup Weekend, can confirm.

A ton of it is muddled in politics and branding. I have yet to see many "big, scalable" companies come out of the ones that have been hosted.

Getting developers is tough, and being the only developer on the organizing team selling the event to other developers when they had free, more legit hackathons made it an insane choice.

I will say that events that Code for America have hosted have been nice. They seem as far as I can tell trying to change something a little more real than the "Uber for X".

Take a look at the free software community (which is incidentally very well-correlated with what the "hacker" community used to be 20-30 years ago, and has much more of a claim to being the intellectual heirs of that group than the hackathon crowd does or even the HN crowd does). There's a lot of focus on ethics and civil liberties, and maybe a bit too little focus on effective PR and on shipping, but it's very refreshing.

As a concrete suggestion, LibrePlanet https://libreplanet.org/2015/ is next weekend at MIT, and free for students. Or see if there's a Debian group in your local area.

Welcome to the future of CS. As technical fields cross into the phase of commonly understood knowledge, the ability to exploit imbalances rises. Opportunity exists everywhere, but we as insiders with our vast technical knowledge are distracted by our awe of capability. We fail to exploit the low hanging fruit that a capitalist might immediately sense. We would rather pursue deeper knowledge within our domain to be masters of our craft.

People selling cell phone mods don't usually know anything about electrical engineering, mechanical engineering, or manufacturing; yet they somehow can pull millions of dollars of profits out of plastic cases and LED mods simply by dangling a few slices of pizza in front of a hungry college student.

Point is, exploitation is everywhere -- don't be exploited, and computer science is at the stage where it's simple enough to follow some rules and slap a few APIs together to build a decent mash-up that's never existed before... that a fraction of people are willing to pay for, and "make bank bro".

I hate it. It's not just you feeling this frustration. Just see the writing on the wall, and know that app dev / pipelining of data feeds is going to be as "easy" as programming a VCR in the 90's.

Why is this a bad thing? Business people are good at selling things and making money. This is what they do. If you are envious of their skills, learn how to do it yourself. Get a low level sales job on commission and see what it's like. I doubt it is as easy as you might think.

Reasons why I go:

1. Get introduced to new technologies 2. Get inspired to build something new 3. Meet interesting people and help them debug code 4. Win prizes

The immovable deadline is an amazing motivator for me. I recently finished some code at 12:59:28. The deadline was at 1:00pm. At 32 seconds on the clock, my code finally stopped returning errors.

Technical hacks are not ignored by everyone. They are, however, often poorly presented. I got tired of that problem, so I am working on making it easier to get better exposure during hackathon presentations even if the presenter is not amazing at pitching. I helped many presenters improve their pitches in only a few minutes, but it's a difficult skill.

Sponsors don't ignore cool technical hacks. For them, such events are partially a recruitment opportunity. They often continue to work with interesting people after the event is over even when they are not winners.

Although I won several hackathons, more importantly I got started working on my products at such events. They were a catalyst for me to stop dreaming and start building.

> They are, however, often poorly presented. I got tired of that problem, so I am working on making it easier to get better exposure during hackathon presentations even if the presenter is not amazing at pitching.

I think that hackathons should revamp this process. If the goal is truly to build something amazing then judging people on 2 minutes pitch does not make sense. Maybe let a couple days to a team of judge to go through the project/code etc...? Just a random thought.

> They often continue to work with interesting people after the event is over even when they are not winners.

I second that, I got several interviews that way.

There is nothing inherently wrong with hackathons. Software development is one of few disciplines in which one can cook-up something valuable quickly in few hours. Imagine medical students trying out this in their discipline :)

However, there is somehow perception that creating via hacking == great engineering. Hacking is a part of engineering. Engineering requires discipline, attention to detail, due diligence and long term view. Think about all the amazing bridges, or design of fighter aircrafts. Sure there might be moments where something was solved with clever hacks in these endeavours, but its the rigor of engineering that makes the product final shape.

There is also non-technical aspect. Great hacker may not be == great team person. All the amazing things around us were created by "teams".

I think a great comparison would be between the British tv show "Scrapheap Challenge", and "real world" engineering.

In the show, teams have to compete, over a period of 3 days, to build specific vehicles (e.g. amphibious cars, remote control tanks, light aircraft) out of what they can find in a (well stocked) scrapheap. The vehicles are invariably unsafe, hastily put together, and look you think they'd look after being made out of scrap. Generally however, each vehicle actually performs the task its made for.

If you took any one of the competitors on scrapheap challenge, and dropped them into (say) Lockheed-Martin, they'd undoubtably flounder (at least initially). The skills required to hack together an aeroplane in 3 days, are entirely different from the set of skills required to design an f22.

Last summer when I was an intern I totally bought the hackathon culture. Then I went to one and was absolutely appalled at what goes on inside hackathons. Big talks about the next cool app, and raising money from VC coz I went to Y school and know Z. One of the apps that won was a chat app for hackers in 2014. There were some good people too, but they were hard to find and very few. Since then I have started moving away from the so-called hacker culture and just ignore hackathons. Fundamentally the whole concept of hackathon just sounds bad to me now. You code and don't sleep or sleep in some random place at random time. I would take good sleep any day over learning some fancy new technology. I would prefer hackathons to be more where a set of people show something interesting they have built and then people can discuss merits/demerits and start contributing to them. Sprints of open source projects comes to mind. The likes scikit-learn under python for example.

How many high school "CEOs" are there in the HH community? I think that tells a lot about the type of people that are attracted to HH.

However, I don't think a gross generalization of people who go to hackathons (possibly competitively) is very accurate. A lot of people in the hackathon community are making actually cool things beyond just sticking APIs together, and there are many who can not program at all.

WRT selection for a hackathon. When thousands more apply than spots are available for, there is going to be competition. A lot of the hackathons realized they were not being inclusive enough and began initiatives to change that. That type of responsibility is exactly what they should have done.

Hackathons, Startup Weekends, etc. aren't really intended to birth the "next great startup". They are primarily a way for you (and me) and fellow people who are better at coding than chit-chat networking to meet some interesting new people, make some friends and if startups are really your thing to maybe meet a cofounder or a business person.

I get it, it's extremely frustrating that hackathons, like TechCrunch and the rest of the startup press focus inordinate amounts of attention on lightweight, consumer focused startups that are probably going to go under in a couple months if they ever actually get off the ground. But that is the reality that we live in because that which is easily understood (obviously) gets more attention from more people than other topics which may have more value, but require significant industry knowledge to even understand, much less competitively evaluate.

We fall into this same trap though, as a CS student you probably understand on a much more detailed level what a profound breakthrough it would be to have some sort of technology that would double the speed of database queries, but it's much less likely that you'd really deeply get the impact of a cool "hack" for some chemical process for doubling the rate of some reaction.

So, in summary:

1. Don't despair.

2. Go to hackathons to make stuff and meet people and don't worry about winning them.

3. Found your own company and do your own thing.

3. Found your own company and do your own thing.

I realize that this is news.ycombinator.com, but it's really sad that everything needs to end in entrepreneurism, startups, and money.

In hacker culture, the hack used to be the end, not money or power.

The Theo Deraadts and Werner Kochs are the real hackers of this world. They could have worked for anyone from Google to Facebook and have big paychecks. Instead, they accepted having more modest means to do what they love: hacking on code and being in a position where one can uphold their ethics (and the hacker ethic).

hacking and money are not mutually exclusive. just like music doesn't automatically suck once it's mainstream.

Case in point:

The word “hacker” has an unfairly negative connotation from being portrayed in the media as people who break into computers. In reality, hacking just means building something quickly or testing the boundaries of what can be done. Like most things, it can be used for good or bad, but the vast majority of hackers I’ve met tend to be idealistic people who want to have a positive impact on the world.

The Hacker Way is an approach to building that involves continuous improvement and iteration. Hackers believe that something can always be better, and that nothing is ever complete. They just have to go fix it — often in the face of people who say it’s impossible or are content with the status quo.

Hackers try to build the best services over the long term by quickly releasing and learning from smaller iterations rather than trying to get everything right all at once. To support this, we have built a testing framework that at any given time can try out thousands of versions of Facebook. We have the words “Done is better than perfect” painted on our walls to remind ourselves to always keep shipping.

Hacking is also an inherently hands-on and active discipline. Instead of debating for days whether a new idea is possible or what the best way to build something is, hackers would rather just prototype something and see what works. There’s a hacker mantra that you’ll hear a lot around Facebook offices: “Code wins arguments.”

Hacker culture is also extremely open and meritocratic. Hackers believe that the best idea and implementation should always win — not the person who is best at lobbying for an idea or the person who manages the most people.

To encourage this approach, every few months we have a hackathon, where everyone builds prototypes for new ideas they have. At the end, the whole team gets together and looks at everything that has been built. Many of our most successful products came out of hackathons, including Timeline, chat, video, our mobile development framework and some of our most important infrastructure like the HipHop compiler.

-Mark Zuckerberg in his letter to investors at the FB IPO.

Your rant is perfectly founded. There is absolutely an issue in the current tech-scene of people with super-sized egos and the ability to justify nearly anything if it means their start-up idea will succeed. Most of these attitudes change with age, but some won't simply because they'll never encounter any real consequences or talk with people outside their social-circle. You're running into a high-concentration because, I assume, you have a lot of young inexperienced people at your hackathons. Already tech-scene in general has this issue; it's higher with the young who tend to be inexperienced; then you're at a hackathon where it has a high chance of attracting the extra-intense of those types of people. It's even extra x 2 if the person comes from a well-off family. So their parents are wealthy, probably the parents friends and their kids are all well-off, go to a fancy school walk right off campus into fluffy VC-funded paradise without knowing anything of the world outside of wealth & tech. Anyone would have a difficult time developing empathy in that situation.

You may or may not be religious, but this quote comes to mind: "For what is a man profited, if he shall gain the whole world and lose his own soul? Or what shall a man give in exchange for his soul?" --Matthew 16:26

Best thing, imho, is don't let them change you. Stay compassionate and have empathy towards others; especially those outside of tech. Don't let your ego inflate to the point where you start saying things like "We create value! Everyone else should be praising us!" When you start to feel troubled by it walk away from tech. Have a walk in a nice park or something. Next time a homeless person asks for money, give a larger amount and perhaps try to strike up a conversation to hear their story. If you can, even volunteer at a homeless shelter. Definitely avoid trying to apply computer-world-boolean-logic to humans. Listen to people and appreciate emotions; don't consider emotions an inefficient distraction. Emotions is what makes us human and keeping in touch with them helps you understand others. Embrace your emotions and allow your heart to move you instead of your programmer-mind from time to time. Try a dancing lesson or 2. Maybe even read some romance novels. Remember the cashier that sold you that cup of coffee this morning is just as important as you are. Basically, don't lose your humanity in this goldrush.

There's more to life than social apps & VC-funding.

How terrible is wisdom when it brings no profit to the wise -- Sophocles :-)

I know myself and a large group of students constantly avoid going to hackathons because it teaches you to:

(1) Focus on short sighted goals

(2) reinforce "hacks" as opposed to well engineered code

(3) Not build long lasting projects

I spend 6 - 12 hours a day coding everyday (weekends and all), and I produce (in my opinion) really cool stuff. Producing a quality, bug free, code requires a program to be dynamic, and usually takes weeks to months to code properly. My goal is always to implement a new function every day, one 25 line max function. I actually learn more being consistent, as opposed to being exhausted and hardcoding an address.

I actually (sorry) hate working with the hackathon types, some can code really well in a pinch, but in the end they usually are not reliable and bugs usually go uncorrected. There was a post yesterday about the final 10% of a program being left incomplete, and that's where I feel hackathon types have a tendencies to leave.

I agree with this, but I think those are important skills to have; they just shouldn't be your only skills or even your default skills.

Hackathon is a side-effect of a wider change in modern software development. We seem to have successfully commoditized a portion of it. This portion called "apps" is mostly a cosmetic rearrangement of underlying components. Flush funding and the apparent status such work provides is hard to ignore. I mean how am I supposed to say no to a 10k prize money for 10-12 hours of work?

Whenever a product is commoditised, the brushes hide and the hammers come out. Imagine how the elite calligraphers of the 15th century felt when their beautiful noble art form was replaced by a block of wood. And the disgust they would have felt of seeing books in the hands of common folk instead of the Kings. IMO I think it's alright since we are not sure yet whether the hammers cannot change the world. They yet might.

I'm also very skeptical of how fast hackathons are growing, but let's look at the results here. We have kids who would otherwise rely on their college courses to teach them CS and prepare them for the job market. Instead we have a few showmen (include the one you quoted) who get the masses psyched up about building things. I think that's pretty cool!

Don't go to a hackathon to "win." In fact, I wish prizes were removed completely. Instead, go to hang out with like-minded folks, learn something new, and teach a newcomer. You'll get the most out of THAT as opposed to slamming a few APIs together and claiming whatever quadcopter Twilio is giving out this year.

This isn't a "new" thing, there are those who create with technology, and there are those who exploit technology for gain. The original dot.com "boom" was the influx of people who really didn't care at all about what having the "Internet" meant if they all they needed was a good pitch and could get millions by convincing people that revenue wasn't a big deal, it was all about foot print. Those folks really offended the folks who were serious about the technology (or the art if you will) and they nearly all went broke or left in 2000/2001. The other crowd are the folks who use technology to take advantage of others, they rank from actual criminals stealing money out of banks, to the nominally legal adtech startups with "negative" patterns. This group doesn't care about technology either, except as a vector to get to "someone's" money and transfer it to make it "their" money.

This spectrum though is everywhere, from professional sports, to programming, to finance, to dog training.

But from your example, " ... this ... from a guy who has never engineered anything." pretty much defines the term 'poser' people who try to talk the talk and act like people who they see getting a lot of "coolness" or "celebrity" without actually understanding where that coolness or celebrity comes from. There are a lot of them, they are mostly harmless, identify them and move on. If they are trying to recruit you to come work for them, work somewhere else, you will be happy you did :-)

For those unfamiliar with the Hackathon Hackers culture, please see some select samples:


Anything can look bad when you pick and choose. https://twitter.com/shit_hn_says

I wish they were linked back, I'm sure one of them was me...

You aren't wrong. I've been going to hackathons for many years and there's been a steady increase in folks who are going "to win" rather than folks going for the fun, the energy, the comradeship. Meeting other smart folks, sharpening your skills and having fun were always the big drivers for me and everyone I used to meet at them. I think GroupMe was a turning point. Big win, lots of $$, and that attracted a different kind of person unfortunately.

Did you hear about the student hackathon in Waterloo Ontario, Hack the North? The organizers purposely did not announce anything relating to prizes for the whole event until the end. The funny thing was that nobody even asked! For the finals they ended up giving the top 10 teams equal prizes; there was no 1st 2nd 3rd etc.

An organizer from Penn did a nice writeup of Hack the North here: https://medium.com/@bclaypoole/what-made-hack-the-north-grea....

You're probably right. last hackathon I went to was two years ago and it was the first time people were actually trying to win. Weirded me out. I stopped going because of that.

My company started running hardware hackathons this year to connect with our community, etc., and we are doing 10 events in total across the US. After our first event we realized that conditioning hackers/makers/learners to build stuff that is "commercially worthy" or "prize worthy" takes away from what we set on doing: create a fun and safe place to learn, explore, to push the envelope, to create for the sake of creation. I totally agree with you that we should all take a step back from all the commercial/ego/noise culture and connect as teachers, learners and a community first. We noticed that the more we emphasize the real culture of our events, the better the connection, the magic and creation. Plus the real cool kids don't have to act cool...they just are. Long term, you can't fake authenticity.

I gave up on "hackathons" when I went to three in a row whose winners never wrote a single line of code during the actual event, and instead spent the whole weekend working on their pitches.

I protested (because I tend to do that) but my concerns fell on deaf ears. The organisers didn't see anything wrong with spending the weekend building a pitch rather than a product. It was all about whatever it took to impress the judges -- and the judges were all entrepreneurs with their own pump-and-dump style startups, so they weren't really all that tech-savvy and weren't impressed by technical innovation.

Don't get me wrong, there's certainly a place for pitch-a-thon events but that's what they are -- create a 'kick-ass concept' -- not about technical hacking, and don't make that mistake.

I remember when hackathons were all about "here's some buggy code I wrote that does random/obscure feature/task X because look at how cool that is" and not "look at this pitch/product I'm trying to make to earn prize Y" Shame those days seem to be fading into obscurity.

I left the HH groups for the reasons you mentioned. I personally think it distorts your view on what tech can really do, since the signal/noise ratio has been so low lately. I don't think it's as bad as the group makes it feel, but you're well founded in your opinion.

Hackathons are a hustle. Honestly, the smug, young dev is probably the most likely one to be exploited.

This is simply this generation's "1337 haxx0rz".

Back when I was in school, Matrix was popular, and the term "hacker" had very different connotations.

People would call themselves "cyberpunk", "1337", they would install linux because it was a status symbol in that culture and it was trendy to hate on microsoft. Overall, the "haxx0rz"/skiddies/whatever were just as insufferable as today's "genius 10x entrepreneur 23-year-old CTO"-s.

In the end, it was a net benefit. The more talented of them actually became software engineers, IT or security specialists. Maybe a similar thing will happen with the current generation.

well you've gotta admit at least that Microsoft did in fact suck :)

For me.. cyberpunk was cool because of Neil Stephenson, William Gibson, and uhh ShadowRun.. Somehow this meshed with the rave scene and I guess also 'industrial' music which was slowly becoming cool.. but for a while.. it wasn't quite there yet and being a hacker had negative coolness connotations kind of like being into MTG or D&D.

I never thought about the release of the movie "the Matrix" as being the pivot moment after which the consensus view of hackerdom coolness shifted (at least in highschools across america), but you're probably right.

Hacker culture is dangerous.

We are living in a technological Cambrian explosion, and it is certainly very exciting to see the many types of hardware, software, and techniques that have emerged in a few short years.

The power that can be wielded by tying together a few components is enormous. Unfortunately the 'Hacker Way' is to glue components together and declare success if the whole thing 'works'. The glue is normally a scripting language of some sort, and the pieces can be enormously powerful, such as an EC2 cluster or an IP messaging framework.

There was a study a while back called 'The Cloud Begins With Coal'. While some may dispute the specifics, the main point is this- computation requires energy. When you integrate components without regard for how much energy is required to exercise them, you can end up with an enormous and inefficient or dangerous system.

Consider Facebook, a case study of the dangerous effects of a hacker system coupled with large amounts of money. They have built an enormous computational infrastructure to automate the task of sharing pictures over a network. Thousands of engineers and large amounts of electricity are being consumed to execute a process that has no clear social benefit, and for which few of the 'customers' would be willing to pay, other than the surveillance agencies.

Why is that? I propose it is due to non-systems thinking, nobody sat down at the beginning to engineer the end-to-end process (much less the business model). A properly engineered system would require a central piece of telecom equipment, say a typical Ericsson switch, and a git-like protocol that stored content on the client side. Boom, no data center required.

Somebody a few days ago demonstrated the ability to delete arbitrary content from the Facebook data center using a Raspberry Pi. Hacker vs. Hacker.

Another example of hacker culture is the NSA - nobody there thought of the world as a complete system, they just hacked together a whole slew of tools to accomplish one part of their mission (SIGINT) without regard for their ultimate customer, the American people.

We need to declare hacker culture a clear and present danger to society.

I have mixed feelings about this.

On the one hand, I agree with the energy-efficiency issues, and the amounts of waste in current products annoy me. It got so bad that people honestly think routing data around the world to do something that should be done via a local network is a good idea. I wouldn't pick on Facebook that much though, it has a clear social benefit - they hit a sweet spot in terms of interpersonal communication, as witnessed by the adoption it has. I know I derive tons of value from Facebook and can hardly imagine switching to something else now.

On the other hand, the thing I disagree with is calling it the hacker culture. Let's be clear about what group of people you're complaining about - it's not the culture of skilled, playful people - it's the hipster/startup variant of "hacker culture", taking a bunch of APIs for cat pictures, gluing them together with the most trendy JS framework that happens to be totally overcomplicated for the task at hand, and calling yourself the master of the world. The guy with Raspberry Pi is probably the only actual hacker in your entire comment.

Also remember that programming went mainstream some time ago, and most of the programmers that are employed are not hackers.

Hacker culture is fine. Hipster culture is dangerous.

That's because the world is vast and there are many companies and engineers in it.

I see two types of engineers: the build-it-quick lot and the build-it-right lot.

The first is ideal for companies where getting an idea to market as fast and cheap as possible is ideal. They use abstraction tools which are not robust but allow fast and flexible prototyping and a "MVP" to come out in a month. The end goal is to get enough traction for an acquisition, the acquirer can worry about rebuilding things properly.

The second lot are greybeards, with or without grey or beards. They will tell managers annoying things like "I can't commit to this deadline because I don't know, right now, the order of magnitude of time this will take". They work for larger companies or more ambitious projects where correctness and robustness is valued, like in banks or designing embedded systems or machine vision companies. They also tend to cost more because their skillset is bid up by large companies with deep pockets.

Both sides have a point.

It's probably more important to push the MVP out today before you run out of money than to have a truly scalable, Boyce-Codd NF compliant database underlying it in just a few more months, if you're building a simple company in a busy space, and worrying about customer data protection when you have no customers is understandably not at the top of the priority list for your investors.

On the other hand, it's probably a bad idea to build your hospital life support system in RoR, or your multinational financial reporting infrastructure in 2 weeks of "hacking".

> I see two types of engineers: the build-it-quick lot and the build-it-right lot.

There are also those of us who try to be both, depending on the current business priorities.

I used to think that, but experience has taught me otherwise. The buyer of services is what makes or breaks the deliverable, it is they who have the power. Sure, a competent engineer is a pre-requisite but there are situations where you simply cannot win.

The hackathons I've been to are pretty weak technically. Most focused on ideas and investment opportunity, very far from real hacking by building stuff.

Honestly, I think part of this is because the word(s) "hack"/"hacker" have gotten really played out. At one time, 'hacker' had pretty specific[0], if not always easily-defined meanings. You might not be able to articulate what makes a great hack (quick: what do phone phreaking and putting a cop car on the MIT dome have in common?), but you knew it when you saw it.

Nowadays, "hacker" has cultural cachet so we get lifehackers, growth-hackers, hackathons, etc.

In my curmudgeonly opinion, none of these are really hackers or about hacking. Real hackers (I do not consider myself one) need to do a better job of policing the use of the word "hacker", but they tend to be terrible at doing so, because they remember what it's like to be socially excluded and don't want to be seen as socially exclusionary.

[0] http://catb.org/jargon/html/index.html

This is funny because whenever I get into an argument on HH about the "true" meaning of the term hacker I end-up posting this link to catb. It usually ends up with me being called a nostalgic conservative.

tl;dr: Apparently I am 19 years old nostalgic.

Yeah, it's always going to spark arguments. There are many of people who are invested in calling themselves hackers, and some of them want to be cool but don't want to be associated with those scary criminals, so they'll try and tell you certain hackers are "actually not hackers, but crackers" and the whole thing gets derailed into a Hackier-Than-Thou competition.

From my perspective, there's a certain je ne sais quoi of real hacking, and it has nothing to do with churning out an MVP in a weekend. In fact, sometimes the greatest hacks are the least practical.[0]

[0] https://en.wikipedia.org/wiki/IP_over_Avian_Carriers#Real-li...

If you adhere to a tradition, you get to borrow its age :)


Look, the Valley is full of dreamers and some are lucky at it, but most success happens out in the real world and needs doers to make it go. Dreamers are usually more articulate and well spoken than doers, since that's all they do. Above all, the Valley rewards dreamers who actually do.

Ignore the bullshit — there will be plenty. Focus on what you want to do.

I see hackathons as a very fun activity - it needs not be serious. Imagine it like a friendly basketball game with few of your friends and a chance to meet new players. Now, there will be some people who will think that they are worthy of playing major league, because they were best in college or something, but as said in many other comments - they will get a reality check sooner or later.

Hackathons come in many flavors - some are trying to mock a startup environment, some are sponsored by big corps who look for PR, some are trying to find vulns in software. But at their core, they should be looked at a chance to just gather with like-minded people, exchange ideas, give a stab at an interesting challenge, win a trophy and move on. And a company that hires a person based on flashy trophies from basketball courts down the street, probably needs to rethink some of its values.

I'm 33. I graduated from highschool in 2000. Back then we had something called 'LAN parties' which were off-campus adhoc gatherings of nerds who would haul their desktop PCs around and setup a temporary LAN using physical ethernet cables (ever heard of coax?). The ones I went to took place in the food court of the local mall on the first Friday of every month and were advertised in the back of a magazine called "2600 the hacker quarterly".

When I first started going to these tons of people there were BBS sysops, others were HAM radio enthusiasts who were learning about microwave packet radio, others were hardware hackers, telephony phreaks, ascii artists, and a few were pro infosec geeks.

Nobody was there because of the idea of "launching a startup" everybody was there because they wanted to learn about the Internet and the emerging technologies associated with it. When I first started going to these meetings in my teens most normal people hadn't even heard of the Internet (aside from AOL), so there definitely wasn't the idea that you're going to get rich just by hacking.

We had a blast just helping each other learn things like BSD sockets, networking, or hardware hacking for the sheer joy of it. Hacking was a FUN HOBBY but not one that would get you chicks or gobs of cash.. it was kind of like ANSI ART, demo scene, or HAM Radio which a lot of us were also interested in. There was absolutely zero pressure to achieve anything other than to have fun by learning.

There was a certain hacker ethos that existed back then which seems to be gone now as geek becomes sheek. You can still get a feel for what it used to be by reading some of the literature.

Here's a couple of books off my shelf from that time period which I highly recommend:



I have been to few hacks to India, I found similar drama held by judges here. Well, I don't go for winning a price, nowadays, hackathan is mainly conducted for hireathon, you need to work on specific domain that company is experienced in.

You wrote next best google algorithm for page ranking, accurate search results, you will be probably get ignored. You will be asked what is the business value? Why people should buy from you. The funny thing is, hackathan is just a coding stuffs, not a VC pitch club.

After few hackathans, I decided to not to compete on the crowd on a similar idea, then I pick my own idea or some algorithm to try, get to the extend of it make it work.

The "Hackathon" part in "Hackathon Hackers" is totally relative. Your "hackathon" depends completely on the people judging it. Being judged by a bunch of suits with no connection to the technical world? Prepare for Uber for Facebook Cats. However, if you go to a hackathon where the judges are intimately familiar with the technology at hand, you'll get more praise for technical hacks.

In mainstream culture, the latter gets far less press, but the rewards of those hackathons in terms of networking are priceless.

Unfortunately, the judges for the major collegiate hackathons are usually almost all from technical backgrounds, but they're representatives from companies looking to hire, and they're told to judge by factoring in entrepreneurial value.

Spot on.

Jeff Dean was a judge at TreeHacks but some of the top prizes where shitty hacks (App to wake up or something). Most of the prized hacks were really impressive though and involved a lot of engineering. I was really excited about that.

Same feeling at Hack the North (Waterloo) some shitty Airbnb for X but overall some really impressive and cool hacks. Speaks volume for the engineering culture at both Universities.

I think what you are objecting to is the scene and the inherent feeling of fakery. I wouldn't be bothered by it too much, I've been in the industry for quite a while and I've seen people come and go. If you truly love this job you'll be here in a decade or more, but only if you love it. The fly-by-nights will have flown.

And just think, they make you look all that much better. For all the hype of this industry we really are a conservative pragmatic bunch. We don't fall for the hype too often.

I'm curious about this hackathon culture, because it has clearly become a real thing, but I have only a hazy concept of what's involved, why people would want to do it, or how people are communicating about them. I've never heard an announcement of one, an invitation to participate in one, or seen any advertising about them. How do people find out about hackathons? To whom are they advertised? Who chooses to participate in them? And what is the point of it all?

Its these damn nodejs script kiddies

I wonder if you would enjoy other kinds of community tech events more, ones that are closer to the technical side rather than the business side. Things like robot cup come to mind. If you are interested in social/environmental projects and meeting other similar people, you should check out the solar decathlon. I never did it but it looked fun.

A hackathon is a good tool to brainstorm and have some Proof of Concept, but it is a bit silly to believe that it is a good way to build a lasting product and I must say a bit sad to think that what matters is making money.

Building web applications is a very small subset of software engineering with an extremely small subset of what life is about.

Just attend other meetups.

It is very mature that you want perspectives and I appreciate people who are not afraid to say what they mean. You touch on a lot of hot topics here including agism, hackathons, "hacker" culture, brogrammers, and so on. I'll try to write a few replies to address your concerns.

I am one of these "older engineers" as you describe. Mostly I am well-respected by anyone who works with me because I tend to intimidate, but also be very helpful and mentor people. I do feel a lot of disrespect from younger people I meet in the industry. I actually look extremely young for my age, but I can hardly pass as a 22-year old.

Anyway, I'll start by discussing your generation stereotypically. I've been hiring people from universities for a few decades now and I am increasingly disappointed as time passes. Maybe I am just becoming a grouchy aging developer, my patience is wearing thin, or perhaps what I see is just reality. When I hire someone, especially out of school, I never expect them to know much about XYZ technology we use, ABC framework, or anything else I am using at the time. Simply, I look for smart people who I think my team can get along with in the workplace, are at least a tiny bit motivated to work, and are honest in every sense of the word. I learned the hard way it's better to hire someone who is a good, honest, hard worker than someone full of great ideas that can't execute or pisses everyone off each day. Unfortunately, I find myself disgusted by the type people who show up for interview and that I have to deal with from other companies. I do not ask for much.

Perhaps in the words of William S Burroughs, a few "words of advice for young people" are needed:

Do not turn on your cell phone during an interview, show up on time, do some basic research about us before you arrive, understand at least bullet item we wrote on the job description, etc. I'm not your dad and most definitely not your bro. Do not show up to the interview in your free give-away Angular.js t-shirt you got. That technology or framework you are named dropping and then trying to use to feign knowledge about? Well, you aren't fooling me, I probably used it or read about it, tried it, and realized that my instinct that it was garbage was true. I use more new technologies than you do because I am doing actual work as I have done for decades. Just because I am older than you doesn't mean I don't understand Ruby. Just because I don't seem impressed by your node.js github project doesn't mean I don't get it. More likely I am not impressed because your code is terrible and I am shocked that it took you so many weeks and commits to do what you would be expected to finish in 1 day at our office.

Remember that class where you decided the professor was as a-hole and that it was just too early in the morning to go to anyway? Was it called data structures 101? Well, it's going to bite you one day when you interview with me and you can't tell me when you would use a hash table and when you would use a list. Remember when you interviewed with me and you didn't get the job which you thought it was because I just didn't like JavaScript? Well, you are wrong, you did not get the job because you could not explain basics in JavaScript, your favorite language. Go ahead and criticize us for using Foo technology, because even though it's rock solid stable, works great in real-world production, and is making us millions, we were waiting for you to tell us to rip it out and replace it with Bar, which your buddy just put up on Github yesterday. But that's OK, because we're a lame company, and everything is our fault. We just need you to turn the ship around, so by all means, act like an idiot because there is no way we can live without your genius.

Do you want to impress me? Tell me what you know. Explain to me what will make you happy and motivated you. When you do not know something, admit it instead of trying to bs me. I hear enough bs from sales guys, marketing people, and VPs of the department of nothing to recognize bs before it leaves your lips. When you do not know something, do not give up. Tell me how you would do it differently or how you would go about finding the solution. If I give you hints or part of the solution, use it or even ask me for another hint. I am trying to help you because I am tired of interviewing people just like you. I want to hire you so I can get back to coding. I have already seen ten of you today, and I am currently considering offering a 5 million bounty for the next person who can sit in that chair and have even 20% of what we need to do the job.

You can be relaxed, just not too much. Most developers who have been at it for awhile really need to stay relaxed and do not take everything too seriously. You can have fun with us and talk to us. That does not give you a license to fool around, act unprofessional, or like an idiot. This is a job, and it takes very little else but hard work like any other job. Things are done by doing, not talking. People worth impressing are impressed by actions, not words.


Hey there, one of the young guys here, trying to weasel my way into a job, I have a few questions for you If you don't mind.

You said this:

More likely I am not impressed because your code is terrible and I am shocked that it took you so many weeks and commits to do what you would be expected to finish in 1 day at our office.

I have a github account, and I use it to host a few of my projects. Right now I'm working on writing a operating system. It's been somewhat successful so far, but as operating systems are a deep and complex field, and I'm definitely still learning, there's a lot of embarrassing mistakes and bad code throughout the git log. For example, I just recently learned how to properly write makefiles , and a day on my project was just on writing a somewhat simple in hindsight makefile (because I was reading the man page at the same time). Should I just not host said projects on my github?

Also, when you look at a github profile, what do you look at? Asking because I can probably get more followers if I make more node.js whatever, but I really like my C and I tend to go for more challenging projects then popular ones. Is that a bad idea?

Let me also add some more specifics for your case:

1. Program whatever you want. Don't go for popularity. If you don't do what you want, then you won't finish.

2. Corollary to the first item, finish what you start.

3. Anyone who judges on stars as an idiot. I will use the sweeping brush. In the same way it's hard to make a hugely successful startup, being good and being popular are two different things. Without naming languages, frameworks, etc., I personally find a lot of the most popular stuff to be among the worst tech wise.

4. Consider making some of your projects private if you are really that worried. Github is for open source, public collaboration. Although it provides private accounts for pay, I am not sure it's always the best deal financially. If something needs to be private, then hosting on a public service may not be the best idea anyway. Either self host, or at least comparison shop. More generally, don't put things out there you don't want people to see. I'd even add people need to stop putting things out there that are not worth seeing as it just makes it harder and harder to find what is a toy vs. a real project.

5. For Github profiles, mainly I look at what I mentioned in my other post. Code quality over quantity, good behavior, and claims match reality.

Finally, I will add that you should not take on things that are too ambitious. While it is good to challenge yourself and you learn, it is much better to take on projects you can finish. This is a hard thing because it requires motivation and the related skill of picking something that is challenging enough to keep it interesting, but still feasible. I say this as the author of multiple past game engines that I never fully finished and released for instance.

I often tell colleagues the following rules about projects in general (again, challenge yourself within reason and for mental exercise, but consider below general statements about programmers):

1. Don't make a programming language. You probably aren't the guy to do it. There is most likely exactly two people in this world in every generation qualified to do this well and you probably are not one of them. Unfortunately, many people have made programming languages who should not have without naming names.

2. Don't make an operating system. This is hard. Really hard. Same points about #1 hold, only you probably also need an army of people helping you to do this right. Obviously this may not apply for some small scales and it's find to experiment, but your OS isn't going to change the world. No one will care about it and realize that the software usually makes the OS, rarely the other way around. There are a lot of abandoned/nearly abandoned OS code-bases that are much better than anything we use, but they didn't have developers, weren't cost effective, etc. Console wars have shown the same thing in the past.

3. Don't make a database. You probably will do it wrong. Your database will be fast and fix all kinds of problems the past ones had, but when you start adding in the real features, things change. Soon you will realize that your database now has similar problems to the ones you wanted to fix because as you had to do things like transactions, clustering, backup, logging, and so-on, your optimizations could not work anymore. A lot smarter people than you worked on these problems a lot longer. If they could have magically fixed many of these problems, they would have. While it's true legacy code and corporate politics get in the way here often, that doesn't mean that the same won't happen to you. If you do need to make a #1, 2, or 3, please sit on it for a few years first and talk to people smarter than you before you start. And don't neglect security either.

4. Pay attention to the past. Someone probably made what you made many times before. The first or second time was probably the best, but everything since has just been worse with the benefit of faster hardware. Instead, just simply dig up the past if you must and do what they did in a modern context, giving acknowledgement and credit where it is due. Learn from the mistakes of others as well.

5. Whatever you built is insecure. Ask a security expert or 50 to review it, and then get some coffee because you probably have twice as much work to do to fix it as when you first built it. Better you ask these people before you even write a line of code or at least very early in the process, or hell will descend about you quickly.

> Don't make a programming language. You probably aren't the guy to do it. There is most likely exactly two people in this world in every generation qualified to do this well and you probably are not one of them.

Know how they got qualified to do this? By actually doing it, and by reading about others who were doing it. Modern language developers have so many shoulders of giants to sit on it's not even funny, but even so; it was only a generation ago that stuff like C didn't exist. Someone had to fill a need with a language.

Same goes for OS's/other stuff.

And sometimes, occasionally your stuff gets useful for other people -- and then they start correcting your mistakes. We are going to need one or two people who are that good at programming language design in 2039 and if it takes 24 years of putzing around and designing languages that don't work to get them there, all the power to them.

No, making more languages is not a solution. If your language solves a problem that others cannot do as easily, great. The point is that even if you succeed on one level, you can create messes. One of the largest problems we have today in computer science is all the mess of poorly constructed languages. Just because something is widely used does not make it good, rather there are other realities like popularity contests, luck, press, etc. at work.

If you read my comment, you'd see that I didn't write no one should do it, just that there are only a few people that should. You can create your own language or DSL like thing in your spare time. Just don't spend thousands of hours on it and push it into the public. Without naming names, there are quite a few languages that we would be better off in many ways if they did not exist. Some of the authors of these languages have admitted as much and I am pretty sure they know better than both of us.

There's a difference between academic messing around vs. putting out something there with the presumption of knowledge. Making languages is a very hard thing. If you don't understand why this is true, you are probably one of these people that should not make a language. Sorry, but it does more harm than good 99% of the time. At best, the language gets ignored, at worst, it becomes popular enough in a half-baked state.

> Making languages is a very hard thing. If you don't understand why this is true, you are probably one of these people that should not make a language.

It is a very hard thing, which is precisely why we should be doing it. We do not do things because they are easy, but becuase they are hard, and because the practice makes us better at it. I have maintained a language for a living and I know what mess you're talking about. There are real systems out there that languages can be useful for, and even if you're right that the 99% of the time they cause more harm than good the 1% I would argue justifies the 99 failed attempts in practice.

There is so much wrong with this post. I'll follow your ordering.

1. Program WHATEVER you want. We can't make assumptions about what drives you. If popularity is your biggest drive, then use it. Don't ignore what drives you because you think one way is more honorable than the next. Do what you need to do. No one cares why you do something if you do a good job.

2. Fine.

3. Anyone who judges on stars is normal. They may also be an idiot. But in most cases, stars WILL impress your prospective employers. This may not be a GOOD thing, but it is true. It is just how humans think. Go with the tide not against it, but certainly, the popularity ratings are not all important. Use them to help you advertise yourself but don't rely on them solely.

4. If you are a beginner, there is NOTHING you have out there a prospective employer would not benefit from seeing. Most people I see starting out have so little. It doesn't matter if the project is unfinished. Most projects ARE unfinished. If you just came out of school your prospective employer should be understanding of your priorities.

5. Fine.

Now onto the next list, but a general note first. WRITE WHATEVER YOU WANT. Our entire economy is based around survival of the fittest (for the most part). Create the next best * (language, OS, api, db, etc) or don't, you still learned a hell of a lot (I hope). Jumping into things with which you are unfamiliar is AWESOME. You WILL be rewarded.

Anyway, the next list:

1. As with everything else, if you want to do this, do it. You will learn about lexing, parsing (because God knows most people can't tell the two apart), ASTs, the difference between a compiler and an interpreter. At the very least you will be the more intelligent voice at Your Generic Job when talking about Python's awkward scoping.

2. Write WHATEVER you want. Now, truthfully, you probably won't get far. But if you learn what a kernel is, what a boot sector is, etc, you will be far ahead of most other programmers out there. Will this be helpful in your career? Probably not. But WHO cares! You'll learn some good C skills at least.

3. Write WHATEVER you want! Honestly a simple database is probably the simplest of the three mentioned topics (language, OS). New databases are always being written.

Ultimately, the point is always that although you probably won't beat the existing implementations, you WILL learn a lot about how they work. There is nothing more helpful (IMHO) when learning a new topic/api/etc than writing it from scratch. Move on when you understand the concepts. Certainly, don't use your project in production probably, but it doesn't mean you didn't learn anything!

4. Fine.

5. Fine.

Point is, these lists come off as incredibly narrow-minded. A beginner should do what interests them. While their projects probably won't take off, these are the most important things to show to employers down the road. This will demonstrate your interest in CS, your ability to take on a challenging project, and for crying out loud it gives you code samples. Email me if you have questions.


I don't think you correct the parent so much as come at the question from a different viewpoint and context.

If you are trying to avoid B.S. as a newbie professional programmer then the parent advice is, in my opinion, very apt (and "narrow-minded" only to a degree that feels well-focused.)

On the other hand, if you are a beginner and hoping to really learn the art, as well as the trade, then your comments eatonphil are most apt as well.

For example, knowing what I know now, I would never try to design and implement my own language (except for fun), but I know what I know now in part because I've done so in the past. ;-)

3. No, judging on stars is ridiculous. A good library is a good library. Perhaps stars may catch people's attention, but honestly anyone professional I've ever known doesn't even remember to look at stars in the UI. Better to look at other things like the actual code and commit frequency and contributions to see if it's still alive.

4. This is not at all true. If you send me a link to code to look at and it sucks, I won't hire you. Perhaps my perspective is skewed since I rarely ever hire people who I have to teach computer science 101 to, rather I take only people who show promise, have the tools, and simply need to put in the time. Your work is completely reflective of you, so please just don't throw random bad code and call attention to it. This is terrible advice.

Anyway, I think you missed the point of my next list. The point is that you give these things long and hard thought. You do them one day if you get there, and you mess around for a few weekends. What you don't do is dedicate years on these projects unless you treat it like a video game in terms of fun level.

1. This is why you take a class in writing an OS and screw around for a few days. This is different from writing an actual OS.

2. Same as #1.

3. New databases are often being written and they are bad. A lot of the new databases are simply layers on others, not true databases. As for this issue, again, it's something that requires careful thought and experience. You better be solving a problem and be solving it well. The fact that things are written is not justification to write them. Notice how so many of these are written and not really used. Notice all the problems created, abandoned projects, and catastrophic design flaws that creep in later in the projects because of lack of planning, thinking, and ability. I've contributed code to some of the biggest databases out there and I don't feel qualified to write one myself. Sorry, but this is another skill beyond most people. If you've ever worked with someone who really gets this type of programming, you realize they were born to do this. You may be a better programmer than them in everything else, but DB, OS, programming language people who are good are super rare.

My lists are not narrow-minded. You can philosophize about how little Johnny can do anything. I speak more in terms of actual experience and reality. It is better to tell it like it is. You can write whatever code, whenever you want, just be reasonable. Build things you and other people want to use. Do not build hacky, half-baked things that waste time and repeat history. Following this advice would probably eliminate a good majority of the bad projects out there. If you can't see that, I am not sure where you've been working all these years. I've worked with some brilliant people, and especially the ones who did these things would tell you the same.

Well honestly, that part about Github was a bit of a joke grounded in some real-world experiences. Mainly I was just referring to people who act mighty about something that is in essence, nothing. Further, I am referring to people who obviously are struggling over basics, but are not humble enough to recognize it. Amazingly, people love to brag about things they are actually not skilled in at all.

As for public facing programming-related artifacts and sites, I don't think it's a good idea in general to judge people on things like Stackoverflow, Github, etc. It's not that I don't at all and not that my colleagues don't, but rather we place appropriate weight. Mainly when we asks for things like this, we just want to see what your writing and code looks like to get an idea. If a candidate said to me, I don't have a Github account or I have better code I can send to you, then that's fine. There are so many arguments why judging people this way is bad that I would end up writing a book in reply.

This is why sometimes we'll do a coding test regardless because then we can at least have greater confidence that the person actually wrote the code we are looking at and that they are capable of executing the type work we are interested in doing. Even for coding tests, we mainly put weight on the explanation the candidate gives rather than the code. You learn a lot about how someone understands problem solving by asking them to explain their code and walk you through it. Moreover, it helps weed out the cheaters, pretenders, and liars, of which there are many.

Regarding your case, I would never really penalize someone that harshly based on their commit history, at least in isolation. As you explained, there are many factors at work. If a candidate explained why there were so many commits and 3 months ago, he did x and then now he's doing y, I wouldn't care. I would actually just look at the explanation itself, rather than the commits.

Be wary of any employer that cares too much about your Github. Although one should be humble in interviews, you also to a small degree are seeing if the company and people are a good fit for you. If the interviewer is placing too much stress on things you feel are irrelevant, it may or may not be indicative of other future problems with them. I have noticed for instance that people that I have co-interviewed someone with sometimes become very antagonistic when they feel threatened by the person they are interviewing. That is, their ego gets in the way of doing a constructive interview.

If I had to pick specific things I look at when viewing anyone's work including Github:

1. Clean code with a consistent style. This is rather subjective, but I think that most of us develop a feeling for the things we want to see. A good developer searching for other good developers should recognize that good is not simply coding very similar to yourself, but rather that the code has easily identifiable merits, even if you disagree on some choices. Simple things like namespaces and following the standards of the language are easily identifiable and hardly debatable.

2. Understands the material. In the case of Github and your commits, part of that might be understanding how to use git. Things like rebase vs. merge come to mind, cleaning commit history and branches, and so on. We all make mistakes and do stupid things like use git to move things between machines to get something done fast. It's fine, just keep things tidy and use the tool properly most of the time (preferably all the time obviously). If it's a programming language, don't write Lisp like C++, don't write JavaScript like Java, and so on.

3. Recognizable that it is actually the person's work and not plagiarism. Bigger problem than you may think.

4. Obvious that something of value has been created. I've seen a lot of node.js projects linked to me by candidates that are in essence doing nothing but wrapping something else, then outputting it to a pretty UI that came from someone else, i.e. Bootstrap. A lot of this can be fine, but there better be a point to the project and the description given by the candidate should match reality. If it doesn't, it just feels like bs or a lie. It's OK to use tools like Bootstrap, but just don't take credit for those parts as if you did it all yourself, from scratch in assembly or something.

5. Good behavior. This can mean a lot of things. For example, how does the candidate interact with issue submitters? Is the documentation broken? Do they seem to post a lot of crazy, false, ridiculous stuff everywhere (your language sucks type stuff, sweeping false generalizations, etc).

To put the modern hackathon ethos into perspective, simply compare it to the demoscene.

Suddenly, the title of "hacker" that so many pride themselves on starts to feel a bit generous. Especially in context of simple CRUD apps and API mashups.

Regarding hackathons, I've felt much the same as you. I let many of my team members go to these events to keep them happy, motivated, and to network. I have met many people from these events, brought them in for interview, tried to find people to start a start-up with, and so on.

Full disclosure - I've only gone to hackathons to accompany co-workers to provide advice and to network, I don't have any desire to actually participate.

Anyway, my general view on hackathons are they are a waste of time. If you want to learn something, learn by doing a real task, not a contrived one for a hackathon. If you are taking a more practical idea into a hackathon, sit on it, use that time to think it through, and build it on your own time, rather than in a noisy room. I get that people want to network, that they need motivated, and that constraints/goals/focus can inspire them, but I really feel that in software development, that's just people looking for an excuse. If you want to build something, build it. If you want a constraint, write it on a piece of paper yourself and follow it. If you lack the creativity to make something without the help of a hackathon, you are probably a lost cause anyway.

You can experiment with that new technology yourself. You don't need the group to tell you what you are doing is right or cool. The group is often wrong or misguided. History is full of bad group think. The way I see it is that if you are really a computer scientist, look at your computer and the world around you for a few minutes. You should easily see thousands of problems that need to be solved or can be solved better. It doesn't matter if it is polishing an old tech or a crazy new idea that throws out everything we learned before. I have more problems to solve than I can handle in a lifetime and I cannot imagine wasting that time at a hackathon in that kind of ridiculous environment.

You mentioned that there is definitely a bro/framework/money culture and I agree. Look at all the "schwag" and advertisements at most bigger hackathons. People want you to buy things and to use their stuff. Putting time constraints on people doesn't make them automatically more creative, often it just forces them into using whatever framework because of the nature of the hackathon so they can get something complete. This is constraining creativity usually, not encouraging it. This is not some romatic story about a lab deep in the bowles of MIT where the next great clean energy will save the universe, it is a gathering of guys trying to out muscle each other's egos. The bros will dominate because of this and will always be there in some form.

Check the experience level. Notice that a lot of great programmers don't go to these events. Why? They are working and don't really care, and nor should they. If you want to have some fun with people, start asking your colleagues and friends why they are going to XYZ events, hackathon, whatever. Strangely enough, most people I have asked can't explain and give reasons like free pizza, chance to win an ipad, or to hear a presentation about ABC technology. Is it worth losing a day of work or the weekend for that? Can you not read things in more depth at home or even just watch the video later? What is the point?

The point is perhaps to just participate in more group activities and feel part of something. There are similar reasons why people go to religious services, join fraternities and clubs, and post on message boards. People like meeting like-minded people. When a dominant sub-group emerges within a group, it becomes the group and usually drives out the fringes. I remember older and smaller versions of hackathons and meetups at people's houses, garages, etc. in decades past. It was really the same thing where bad actors eventually dominated, and perhaps for awhile there was a period where it felt fun, then stopped. Very little has changed, only scale and the way the same personality types manifest themselves in the context of the time.

Don't get discouraged by these people. They are everywhere, in every sub-culture. If they want to call themselves stupid terms like "hackers" instead of software developers, so be it. If companies want to be idiots and put up job ads calling for "rockstar programmers," just ignore them and take it as early notice that working there would probably suck. If someone wants to shove their glued frameworks in your face and claim they are awesome, just point out exactly what they have done and how simple, or better yet, just do something better yourself. You be the example, and you be the good guy.

But yes, you are right, I hate these people and I too feel they are unethical with stupid ideas that advance nothing. I think this shameful bubble of valuations of companies that don't really produce anything including actual revenue based on something real (ads don't count, sorry, if advertising would die and take 98% of the internet with it, so be it) need to die a quick death.

I would love to chat, feel free to shoot me a message: alt.r9-5p83se1@yopmail.com

I too am a CS student attending a university that particularly flaunts their levels of startup incubator availability. Ignore them, do your own thing is what I found works for me.

Don't worry; good technical chops will never go out of style.

I'm a CS freshman at UMD who's been getting into the hackathon scene in the past months (been to 3, am somewhat involved with the HH facebook groups). I've been involved with the software community for about 5 years though, and programmed for 7.

> It bothers me to see how obsessed with success this generation of "hackers" seems to be.

Yeah, there's a lot of people who want to get rich by making a startup, and recently there was a poll that showed that the majority of people in the Facebook group want to go into management in their mid to late career. We're in the middle of a tech bubble and I think this is a symptom of it. Over the past decade or two, working with computers has become "cooler" as a part of "geek culture". People have seen a lot of people get outrageously rich with tech startups. And people are realizing that software is a high-paying field with a lower barrier to entry than most similar occupations. It's attracted a lot of people who just want money where previously there were people who were truly passionate. Or maybe it was always like that, I can't know.

> I have met people who were justifying censorship, population control and unfair business practices because they could benefit from them someday. I was expecting a little more regard to civil liberties and ethics from students and so called "hackers".

I haven't noticed that there's more people with this attitude within the hackathon community than outside it. Maybe a bit of unfair business practices, but the cases I saw seemed to be the result of not realizing that a practice was unfair. (Not counting the joke ideas that get thrown around all the time of course)

> People win by making "cool" apps (Uber for X) whereas technical hacks are totally ignored

It's a sad truth that simple CRUD apps are over-rewarded at hackathons. Interesting technical hacks aren't "totally ignored" though. It's just that it's harder to judge how long it will take to make something interesting, so either the result ends up being unfinished, or too unambitious, and it fails to capture the attention of judges.

It's also important to note that making a CRUD app that doesn't need to scale is easier than making an actually interesting piece of software. Some people aren't/think they aren't skilled enough to make anything else (yet).

> "There is such ignorance in this world about who we are. We are not criminals. We are innovators. We create things. We change the world.[...]"

While this does display narcissism, I think you're misinterpreting "we are not criminals". I think in context this person is saying that "hacking" in the context of hackathons is not what movie hackers do, breaking into networks and stealing sensitive information.

> Students who believe to be 1000x SE because they can stick two APIs together and use bootstrap end-up to be very condescending older engineers.

Yeah, this is a thing. I think it's a part of getting good at something for some people. I was certainly like this at around age 14 when I started being able to make software that could be useful. Suddenly I thought I was some sort of genius and looked down upon a lot of other people. I grew out of it, partly by not being 14 anymore, and partly by being exposed to the wealth of things I didn't know about.

> Hackathons are great to try out new technologies, meet new people and outreach to demographics that are traditionally under-represented in CS but I don't like where this is headed.

Show up to hackathons, make something technically interesting, and tell other people about it. People are intrigued by those willing to step outside the normal realm of hackathon projects. I do this. I have some friends who do this. If enough people go in with this attitude, eventually the culture will change.

> Like HS there is "cool kids" who are "Student Entrepreneur" or "Innovator, UX Artist blah blah", "RoR Genius" etc... and the rest of the world.

There's not many people who behave like this, but the people who do are pretty obnoxious. There are a lot of people who associate with them but are actually pretty down-to-earth and cool.

> While this does display narcissism, I think you're misinterpreting "we are not criminals". I think in context this person is saying that "hacking" in the context of hackathons is not what movie hackers do, breaking into networks and stealing sensitive information.

"Criminals" do things like try to watch DVDs on Linux. "Criminals" use encryption without giving the US government a key[2]. "Criminals" design platforms that allow people to share information conveniently[3].

When you have people, even in 2015, in positions of power over technology law and policy who have never even used email[4], we still have to worry that the US government, and other governments who are similarly populated by such illiterates will make people who want to develop, learn and share information about technology "criminals"[5].

This isn't new, either[6]: During the duration of the US involvement of the great war (1917-18) amateur wireless equipment was not legal to operate. Instead of fully legalizing it afterwards, they brought in regulation to control who had the ability to use what kind of equipment -- in effect taking a generation of people who were tinkering with technology and taking the commons that was the public airwaves and slowly beginning the process of partitioning it into the state we have today, where iHeartMedia owns 850 radio stations, wireless use is just now with wifi and cellphones beginning to be something the public 'just does'...but only when they connect to large company networks(eg comcast).

[1] http://en.wikipedia.org/wiki/Jon_Lech_Johansen [2] http://www.androidpolice.com/2015/01/16/obama-goes-record-en... [3] kim.com [4] http://www.businessinsider.com/lindsey-graham-says-he-has-ne... [5] https://www.gnu.org/philosophy/right-to-read.html [6] https://plus.google.com/105395547687614433866/posts/WHHYbLcG...

Yeah. But this isn't what most "Hackathon Hackers" mean by "We are not criminals". It's also not what OP was referring to when he criticize lack of regard for civil liberties and tolerance of "unfair business practices".

I agree with most of what you said, but as I understand you are arguing that radio should have been left unregulated? Wireless wouldn't work on the scale we use it today if it weren't for these regulations. Or maybe today we would get by, working around interference, but 15 years ago we wouldn't have had the tech. I'm sure there are better methods of regulation than partitioning the spectrum, but radio anarchy is not one of them.

> 15 years ago we wouldn't have had the tech

There was a whole community of dare I say hackers who were ready to innovate around spectrum crowding at the dawn of the 20th century. They were systematically removed from participating in radio technology, except as passive consumers. Anarchy was working just fine up until then.

With all the power that Clearchannel has had, they could have been helping to be part of that solution. Instead they've been allowed to be lazy, and reap the benefits of a monopoly without contributing back in terms of advancement on this problem.

Knowing whether or not they could have been able to do so is of course an open question and as we learn how to do it right we can extrapolate whether they were capable of it. We could have had Frequency-hopping spread spectrum deployed decades earlier had the right mind been put to the task, and had patents not gotten in the way.

Do what we did: host a "technical" hackathon. Make it clear that it is just a couple of days to dick around with new technology, try your hand at some artsy stuff, or just do something goofy. Make prizes optional (or just goofy), and give everyone a chance to present their work.

Last hackathon I attended at a university (last month, I think) was pretty lame, except for like one sound-transmission hack. I think that students are being encouraged more to focus on businesses or theory and less on the playful stuff.

Possibly because the "playful" stuff will get you expelled, arrested, or both these days. :\

Oh, I was at that hackathon. The hack that transfered data between phones using sound was cool for sure, but there were some other cool ones.

The first place won because they created a custom piece of hardware, but really it was just a couple of parts bought at radioshack and a simple arduino controller. Hardware wins big at hackathons.

The second place was a typical hackathon CRUD app.

The third place was a Minecraft bukkit plugin that allowed gambling bitcoin in a minigame. It was at least a novel idea, and it did directly interact with the blockchain (as opposed to using some kind of SaaS API), so there's some technical merit as well.

I think there was one other interesting one in the top ten, and a couple others that weren't selected for prizes.

Part of the problem is that when you make a more interesting hack, it's harder to judge whether or not you'll be able to finish it within 24-36 hours. So you end up with too ambitious a project that you fail to complete, or with too simple a project, that while novel, fails to impress.

Hackathon judges need to start favoring half-baked interesting hacks over polished "Uber for X" apps if we want to see more variety.

What was your take on the app that won those Surface Pro 3's for letting you split pizza?

The Portland Startup Weekend presented itself as a way to get a new company started, but they were blasting everyone's trade secrets all over facebook and twitter. There was no discussion of taxation, nor how equity would be divided.

If you have the idea, I write the code, and angersock markets the product, how do we divide the equity?

There are some good answers to that question but the Startup Weekend company - a private, for-profit corporation - simply didn't address it, rather they got angry with me when I brought it up.

Yeah, I've had similar experiences with my regional Startup Weekend franchise as well. The way they see it it's actually about coming up with a convincing pitch. This isn't of course "starting a company" or even in most cases developing a product. Instead, it's about coming up with an intriguing idea, that since you're just at the starting line yourself, can be jumped on and stolen by whoever else is there and has more startup capital than you do.

"I have met people who were justifying censorship, population control and unfair business practices because they could benefit from them someday."

There's worse ahead of you, this is the same industry that employs people like weev, Eric Raymond, mencius moldbug, and (sort of) Jerry Pournelle.

> People win by making "cool" apps (Uber for X) whereas technical hacks are totally ignored.

I think a hack is worthless if you can't get regular people interested in it, so technical hacks are rightly failing. If you ever start doing indie app dev you'll learn the same thing. It's easy to write esoteric technical tools and apps targeted at developers. It's difficult to write something that will achieve mass adoption and actually get a lot of usage. The latter has a lot more impact on the world as well.

Even in industry the strong preference is for solutions that string two APIs together as you say, rather than difficult technical solutions like you seem to be advocating. Software Engineering advocates using libraries and services over writing more code because it improves various metrics like maintenance, enhancement, defects, etc..

Applications are open for YC Winter 2022

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact