115 comments

[ 3.0 ms ] story [ 187 ms ] thread
You rock, Jen! You should be super proud of the progress you've made.
Congratulations. You honestly inspired me. Thank you for sharing.
the word coding is so annoying when it's used as a one-fits-all sort of thing, it's like when people use the word literally instead of figuratively
It's just a word denoting a process. Sub it with 'writing a sophisticated software' if you like.
Well, if you want to get ridiculously technical, we shouldn't use "coding" for anything higher-level than assembling bytecodes at the machine level. The term was in common currency at least as early as Wheeler's "The Use of Sub-Routines in Programming" (1952), while by 1954 the term "automated coding" was being used to describe the use of higher-level languages such as Hopper's A-2 or IBM's Speedcode (and, indeed, even basic mnemonic coding and relative/symbolic address transformations that underlie what we today call "assembly programming").

As it is, I'm comfortable using the term to denote any activity that programmatically and logically instructs a computer to take a certain sequence of actions. C? Coding! Java? Coding! JavaScript? Coding! CSS? Coding! Excel columns? Coding! Ctrl-h and a regex selector? Coding! It's coding all the way down!

Seems fine to me. My dad started programming in the late 60s. I've been doing it for money for 25 years. He says "coding" as a catchall term, and so do I. At some point words get new meanings.
My girlfriend expressed interest in learning to code last weekend. You were my example of someone she should research and mimic to start off her journey.

What you've accomplished is extremely impressive and serves as a shining example of how someone can go from knowing morning to developing a true skill. Job well done!

You and your project are truly inspiring. Congratulations on everything!
What do you plan to do next to advance your skills and understanding of software making? How important was being in the spotlight to motivate you to go down this path?
I've been working a website called YumHacker since I've finished the 180 project. It's a restaurant discovery app using Rails as an API on the back end and Backbone.js on the front end. I learned a lot with the 180 websites project and working on a full scale app has been really great for taking my skills to the next level.

Making myself publicly accountable was definitely a great motivator but my biggest take away was getting over the fear of being wrong/judged.

I really appreciate you open-sourcing it - I spent some time trying to figure out how to best integrate RoR and Backbone when I was learning the latter, and having your source code to poke around at was really helpful.
Congrats! This is such an inspiration. What kind of resources did you use to learn?
The internet! I spent most of my time googling, searching Stack Overflow, reading online demos, tutorials blog post and poring over docs to find the answers to my questions. There are tons of free resources out there.
Jennifer, I was going through the top 10 stories, saw the jenniferdewalt.com domain, and thought, "oh, it's that girl who sat down and taught herself how to code!"

In my mind I've sort of associated the brand "Jennifer Dewalt" with ambition, dedication and inspiration. I send your posts and websites to my sister to encourage her down a similar path. Keep up the great work! :)

Thank you! Learning something new is so intimidating but I really think the best way to do is to just dive right in. Sure, you'll suck at first but that's ok. Eventually you'll get better.
I agree 100%. The experience I've gained working on personal projects of my own has brought me further than working on class assignments. Not being afraid to fail will take you a long way.
(comment deleted)
I couldn't agree more with @enraged_camel since I thought the same thing too! Jennifer has done an incredible job documenting her ambition. I wouldn't be surprised if a few companies offer her a developing position.
I absolutely agree. Jennifer's work and courage are inspiring, and basically make me willing to read pretty much anything of hers that is posted here.
I did the same thing! Was like wait, I remember reading about this girl last year. Great job such an inspiration.
+1 I've been coding professionally for 6 years and I am inspired by this.

To me this is not a story about programming or gender, it's a story about grit.

Gwit. Twue gwit ithz wut gathwers us here twoday.
Sam, come on. No crap comments on HN, please.

(I edited this to make it less harsh.)

It's not a mean comment and it made me laugh, maybe it's my childish sense of humour
Or just an appreciation of the Princess Bride...
It's not an especially crap comment, it's just a joke you didn't get. Jokes don't do well here admittedly.
Ok, fair point. I thought it might help to make a public comment in this case because repeated private requests don't seem to have worked.

The jokes thing is a tricky one for HN. I love comedy and I love wit. I'm sure most of us do. But when you're optimizing for signal/noise ratio, as HN tries to, there are tradeoffs. On the whole, I think the community habit of downvoting most (not all) jokes is reasonable for what HN is trying to be.

Congratulations! YumHacker is coming along nicely!
Thanks! I'm currently working on v2.0 which I am really excited about.
Where did he start? What was his first move?
I think Jennifer is truly inspiring. I wish I thought anyone over 10 years old using words like yum was still cute though. I'm sorry, but I sat next to a group of extremely privileged twenty something people last night-- and had to listen to how yummy their food was, and oh the picture taking. I get it, you enjoy your food. Just stop describing it in public; some of us just want to eat. And yes--I do think of all the starving kids whenever I hear yummy out of privileged people mouths. I'll probally get banned for this post, but it just might be the best thing anyone has ever done to me.
Don't worry, I've seen much, much harsher critiques of things on HN. I doubt you'll get banned. I'll have to keep in mind that the name YumHacker was so offensive to someone they were compelled to write an off topic rant about it, though.
I've seen much, much harsher critiques of things on HN.

As have we all. It makes me cringe thinking about it!

I doubt you'll get banned.

Your intuition is better than most; that comment has been punished enough. Things go much better when the community corrects things itself without moderators intervening. My goal is never to have to do anything. Edit: My long-term goal. :)

Grow a spine and leave, you don't need to wait to be banned.
Perhaps not helping with this comment.
Jennifer, ignore the haters. The name is every bit as yummy as artisinally crafted scones, freshly unpacked macbook airs, and the carefree days of a well-fed youth.
What does this have to do with the discussion about Jennifer learning to write software and doing the 180 sites in 180 days? This sort of commentary is best left on Reddit.
I'd even say that having a mentor will make or break some people as learning programmers. I don't recommend going solo from personal experience. Similar effect as going to the gym with someone. They sort of remind you that you should commit to these things.

Got fed up with that and finally bought a rubber ducky.

Did anyone notice the cheeky ascii art in the website source?
I started to learn how to code back in August and got my first job as a developer at the end of February. I went through a bootcamp and didn't see anyone besides my girlfriend for 10 weeks.

It's definitely tough not having a mentor, and I struggled a bit for a couple months after classes trying to figure out what I should spend my time learning. I still struggle with it when working on personal projects and often worry I'm not doing things the "best" way.

I sometimes get overwhelmed because there's so much I don't know, and deep down I know I'll never be as good/desirable as someone with a CS degree. That being said, I'm very happy where I am and wouldn't change anything.

> deep down I know I'll never be as good/desirable as someone with a CS degree.

I stopped working to write this comment--that's how important it is to me that you know this is a belief that will only hold you back.

I could cite any one of thousands of articles that talk about dropouts who made it, but I suspect you know about those articles and it hasn't affected your belief.

So I'll just say this: If I had graduated with a degree, I would have never been able to bootstrap a tech company when I was 20 and sell it for over a million dollars when I was 26.

Don't look at yourself through the eyes of others, because you'll always find yourself wanting. I'm sitting here about to launch my new company (we're doing final testing of our new website right now.) I have no idea whether our site (which is kind of wacky) will convert. I don't know if we'll get any sales. And I've got everything riding on this company--I've put all my chips in.

There's enough in this world that will kick your ass. People haven't believed in my companies for the past 13 years I've been running them. People have laughed in my face, investors have turned me down over and over again, customers have quit, money has been lost (and, on a brighter note, much money has been made!)

Sometimes the only thing you can count on is your internal belief that you WILL make it, no matter what. That's what got me through my last company during its darkest hours. That's what's getting me through now. Enough people will throw shit in your face. Don't be one of them. You are better than that.

The world is full of possibilities. Don't count yourself out. Jennifer sure didn't. ;)

This is so true. Coding is about more than typing some things into a text editor. Even if you don't have a CS degree or a ton of experience you can bring a lot to the table from good UX decisions to fresh perspectives to contagious hustle and drive.
Now if this is true, that takes lots of balls...

I mean the whole "-I've put all my chips in." burn the boats outlook.

I quit my job to work on my startup ideas but have difficulty throwing all my savings in. Wife & kids is my excuse.

> Now if this is true, that takes lots of balls...

Yep, it really is. Not only have I turned down several huge income opportunities to work on MarketVibe, but I'd also sell just about everything I have to see this product come to market. We have a true game-changer of a product, and it's something I really believe in. We also have the right team to build it--I'm a target customer for this product, which is one reason I know the market needs it so badly. And it's a nice money-maker (SaaS).

But yeah. If I had to sell my car tomorrow to finance the startup, I'd do it with zero second thoughts. I'm in this 100%. Otherwise, why run a startup at all?

I heard of someone in australia doing something similar its called Newsmaven

but you seem to adding a dynamic conversion form too.

and props for having the balls to go all in. My argument is that all my savings and assets is not mine. I share it with my family. I can/should only risk my part of the savings/assets even though I have the right to act unilaterally.

Some of my problem is having a savings habit and not being a spendy type of guy. Its an asset as well as I need to learn to loosen up and spend on lot more needed stuff to make our carrotleads product a success.

Just wanted to say that I found this comment to be crazy motivating for me this morning.

Please hit us up when you launch (or contact me personally if you don't want to post it yourself).

Thanks!

Edit: Cool, didn't realize you're in Austin! Gonna ping you

Thanks for the motivation. Like others have said, it takes a lot of guts to do what you're doing.
There's a big difference between being a developer and being somebody with a CS degree. In my experience with hiring developers, I always value people being self-taught. This means you made things work!

To me, that's the difference between a developer and a programmer. A programmer might write technically better code, but often gets stuck when something does not work as intended as is often the case in web browsers. A developer will find a way to make it work, and make it work well for the user.

So don't sell yourself short and keep on learning. You may in fact be more desirable than somebody with a CS degree.

Bill Gates doesn't have a CS degree. John Carmack doesn't have a CS degree. Mark Zuckerberg doesn't have a CS degree.

I bet they all wish they knew more than they do... and work at removing that lack of knowledge for themselves.

I am a big fan of education, even of the CS variety, but a degree is one way to get an education, not the only way. And 'change the world' isn't in the textbooks.

(comment deleted)
Great engineers aren't great because of a CS degree; they're great because every time they saw the mountain of stuff they didn't know, they climbed it. When they got to the top and saw another mountain, they kept on climbing.

If you keep going, there will be a point where you'll be excited to know that you always have more to learn.

I only did a minor in CS and struggled a lot with feelings of inadequacy at my first job. Don't let it get to you - as long as you're constantly improving your craft and learning, you'll find that you'll surpass the people with CS degrees who don't keep learning.

Try to find a senior engineer who can mentor you if possible, and ask other engineers to do code reviews of your pull requests (the criticism is invaluable as long as you're humble and welcome it).

Additionally, engineering is more than just knowing algorithms and syntax and design patterns. A lot of the really important lessons (how to talk to non-technical people, how to push back on requirements, how to prioritize issues) are things that only come with professional experience and really can't be taught in a classroom. In that regard, you're on a level playing field with people who have a CS degree.

There are people who really believe CS degrees make people better programmers. Avoid those people as much as possible. Once you're in the industry, experience and reputation matter much more.

Your most likely practical problem, if you don't have another STEM degree, would be math-related. Self-study or just taking individual classes can fix that, but honestly, the vast majority of development work these days doesn't care about anything past basic algebra, if even that.

I apologize if the below seems like a rant, but hopefully it'll help you feel less "overwhelmed" at the amount of stuff you can learn in CS / IT.

Many years ago (Makes me sound old...) I dropped out of a CS degree to pursue archaeology, and then dropped out of that when I ran out of money and needed a job...

That job (and all the subsequent jobs) taught me a lot about people and business, and trained me with the discipline to finish jobs by deadlines, work with the people around you, remain calm under pressure (most of the time...) etc. All of the time I was working I was training myself. I bought O'Reilly books on algorithms, read RFC's, specs, source code and anything else curiosity led me to.

Recently I left a position, and had to interview, choose and train my replacement. The person who got the job wasn't the most qualified. On paper, they only had half of the job requirements, but during the interview process I realized that this person learnt quickly. This person picked up new concepts, procedures and entirely new skill sets during the 3 weeks of one-on-one training, and they're still doing well in the position from all accounts.

What I'm getting at is that, although "safe" hiring practice is to pick people with CS degrees, there are many people out there who recognize learning ability, passion and personal motivation to be sometimes more important.

Don't lose hope, be confident, be honest, and don't stop learning.

Thanks for the kind words. I hope others out there in a position to hire have the mentality you do. I was a bit discouraged because it took me about 4 months to find my first job as a dev, and at no point during any of my interviews did anyone care to test if I had the aptitude to learn.
A degree is just a piece of paper. I have one. It has 'Phi Beta Kappa' printed on it, but most people don't know or care what that means.

When I look at it, I see a cloud full of rain. The rain drops fall on the earth and water a seed that grows into a sapling, then into a large strong tree. After that, the tree is cut down and becomes paper. So when I hold my college degree, I'm holding a cloud, some rain drops and lot's of sunshine. That's all.

That could apply to any paper. Which honestly makes books even more awesome.
"Most importantly, I’ve been able to overcome the fear of being judged. Whether you are making a piece of artwork, teaching yourself something new or building a business you’re bound to encounter some negative energy. People will say some pretty weird or just plain mean things to you when you’re doing something kind of crazy. Those comments sting a bit, but they’re most dangerous when you let them feed your self doubt. Battling your own self doubt is incredibly formidable."

This is above and beyond, the greatest lesson I've learned as an entrepreneur. Kudos to you Jennifer for finding the same.

It's worth revisiting the original HN post from last year:

https://news.ycombinator.com/item?id=6097155

IMHO she deserves kudos not just for accomplishing her goal (which really is impressive enough on its own) but doing so in the face of a community with such deeply ingrained sexism that some people thought it "suspicious" at the outset.

Obviously she's a strong enough person that this kind of stuff didn't derail her project, but one can only imagine what a different world we'd be in if projects like these were met with more encouragement and less derision.

Not that the haters are getting any satisfaction today.

It seems to me encouragement is the dominant response, both here and in the original post.

My criticism would be that in her post she highlights only the negative comments she got. When, on the whole, the community votes her posts up and the top comments are always positive.

The response from the community has been amazingly and wonderfully supportive. My comments in the post were mostly a reflection on the weird things people have said to me personally. For example, I had a close family member look me dead in the eye and say, "You shouldn't have started this project."
Well I am showing this to my 2 girls.

They have got C++ & Unix books on their shelves but as far as I can tell, it hardly been read.

Hoping your story gets the ball rolling.

Reading some (probably hard technical) books is the hardest way there is to start this thing. Especially with C++ where it’s hard enough just to see your results. If you want something to be done, give them something where they can see their results ASAP. You can of course achieve this with C++, but then you should get them a working IDE, debugger and maybe some easy graphical library to play around with.
actually the idea is not the learn C++ or unix. Most of those books have great introductory chapters and I am hoping that piques their interest.

As of now they know only the basics of markup language.

Very impressive, great job
Very inspiring! Did you compile a list of the resources you used while learning each of the languages/libraries or was it pretty random?
I pulled lots of bits and pieces from all over the place but some of the big helpers have been Stack Overflow, MDN, HTML5 Canvas Tutorials, Rails Tutorial, GitHub, jQuery docs, and the Rails docs. I read tons of blogs and demos as well.
The 180 sites in 180 days effort and result is simply awesome.
"I’m still dealing with a bit of impostor syndrome and it still sounds weird when I tell people I’m a software engineer..."

That's because you aren't a software engineer, and if you are saying so then the feelings of being an impostor are entirely warranted.

'Coding' is one thing, 'engineering' is something different altogether.

I'm afraid this falls into the 'you don't know what you don't know category'.

+1

and then there is also that bit about no such thing as a "software engineer" …

I love the down votes on this. Must have hurt some feelings.
How much code must one coder write, before we call them engineer? Yes'n how many roads must a man walk down...
Its not code its algorithms, backus naur notation, software patterns, etc.

The differences betweem an architect and an civil engineer is the math.

Yes, because civil engineer = architect + math, what a good analogy (hint: no, it's not, until people that have studied civil engineering and not architecture start winning the Pritzker regularly).

Do you also think the difference between a doctor and a biomedical engineer is math?

P.S.: I agree with your first point, but the analogy you chose is really bad. Self-taught coder isn't to a software engineer what an architect is to a civil engineer.

I would agree that what she was doing in her 180 days project probably was not software engineering, but what about what she is doing with YumHacker? If that isn't considered software engineering, then a lot of us here are not software engineers.
It depends. If she's relying heavily upon frameworks and canned tools (which is actually a good thing, because re-inventing the wheel is bad), it's entirely possible to build a website without doing any 'engineering'. I typically consider engineering to be algorithms, data structures, performance analysis, etc. Hard computer-sciency stuff ... which definitely has its place on the web - database developers, browser developers, operating system developers ... they are engineers. Websites like Amazon and Facebook also employ engineers, which is why they are able to release new toolsets capable of pushing the envelop in some way. Or maybe I've got it wrong ... I don't really know. I work on hard real-time embedded stuff for my day job (avionics platforms), so my perspective on web stuff might be a bit uninformed.
"That's because you aren't a software engineer, and if you are saying so then the feelings of being an impostor are entirely warranted."

At face value this assessment feels very unfair. Where do you draw the line? Experience -- is a year not enough? Deliverables -- is YumHacker not enough? Education -- is it lack of formal training that separates the engineer from the coder?

Is it the ability to build non-trivial software systems that makes a software engineer? And we should rely on whose definition of "non-trivial" to assess her engineering ability in that case?

I'm not saying you're wrong in stating she isn't a software engineer, but I doubt you possess the knowledge of her ability required to make such an assessment with any degree of validity.

This is a interesting post to me because I also started programming a year and two months ago. I took a much different approach because I wanted to be considered an engineer not just a "coder". I can say that I did not feel like one after three months of digging into Codecademy Code Year (yes, in three months). I didn't know how to build outside of their sandbox.

Then I dug deeper in Javascript, reading every book I could find until I knew all the pitfalls of the language firstclass functions, global namespacing, scopes, etc...Still did not feel like an engineer.

Dug into Objective-C (that's right...I skipped C) and struggled for three months to build my first app and launch it in the App Store (mostly because re-wrote it over and over not understanding the Core Data model issues I was having. Was I an engineer yet...NOT.

That's right, I skipped C. So, I went back and got into the C book and everything I could find on design patterns, etc.

One year in, trying to really build an app that does not suck and really get close to the metal with some assembly (yes, I know, I have been working backwards!) And do I consider myself an engineer now...? Kind of. Not a good one if I am (despite being a "hellava engineer" graduate from GaTech).

I may not consider myself one for the rest of the year. But that's me. I wish I had her feel for what she is. She posted to HN and I didn't so I give her props for that.

I make software - I don't think it really matters what you call yourself, and I've certainly never seen anyone not get hired because they were looking for a software engineer and someone had "backend programmer" on their resume.
I was expecting this might be a polarising comment, hence some up and down-voting. There's too much back-patting here on YC, IMO, when people are claiming to be what they are not, or when they write some article about how they 'hacked' something that actually isn't that impressive. Sometimes the bar seems to be set pretty low indeed.

I believe part of it is that the general age demographic here is pretty young, and a lot of people have not so much experience working across a range of projects with a large number of people.

A year does not an 'engineer' make, in any field. Why should it be different in the field of software? It's not.

@curbenthusiasm: you seem to have been hell banned - I can't figure out why.

edit: Really? Could the downvoter explain to me what's wrong with this comment? Are we supposed to just leave banned accounts to rot now?

Telling people they're hellbanned destroys the purpose of hellbanning.
Basically it's a system of checks and balances. Hellbanning makes trolling less efficient while showdead makes it possible to correct mistakes. In the case here noone could point out to me why he was banned, so I have to assume a mistake. According to your logic, HN could as well just disable showdead.
If I had to guess, it would be due to a new account submitting a YouTube link: https://news.ycombinator.com/submitted?id=curbenthusiasm

(and yes, I agree, it'd work even better without showdead.)

>"it'd work even better without showdead" //

What's actually wrong with this persons activity here though - they're [presumably] new and haven't had chance to learn all about HN yet. Their questions/comments don't seem so terrible that they should be hellbanned, or do you disagree.

Presumably what you're saying here is that no-one should have the chance to warn those who're hellbanned, we should trust the secret machination of HN to always be right?

I actually very often disagree with the secret machinations of HN.

It's not that I agree or disagree with this particular banning, but that in the aggregate, "you are a new account and you post a link to youtube" is a pretty good general characteristic. While it's unfortunate that there's sometimes a false positive, most things that I see explicitly dead deserve to be.

Besides, it's pretty easy to figure out if you've been hellbanned, and then if you're real, you can ask dang (I guess, now, eh?) to reverse it. No warnings needed.

nice story, but you cant call that "coding". looked at the website and its sophistication can be compared to a kid practicing how to write the alphabet in primary school.

in terms of the learning curve this can be pulled off by an above avg 13 year old in 2 weeks....

Nonetheless women + coding or women + investment banking etc. is the magic combo that will put you on the front page in these days. talk about gender equality/survival of the fittest....lol

She might not have done the most complicated things in the world - I'm no expert "coder" but I've done more complex things than her.

BUT I'd bet she's a better "coder" than me. She will be rock solid on all the basics, so she has a great base to do more complicated things. For the more complicated things I've done, I was relying heavily on stackoverflow searched and the like, and although I made complicated things that worked, they were probably fairly basic mistakes and things that could cause future problems that Jen wouldn't have made/done.

Too many people these days (me among them) jump in without knowing how to swim and then struggle to stay afloat. Jen taught herself to swim first.

I am pleased to report that no one upvoted this.
This is awesome, good work!