hacker news with inline top comments    .. more ..    9 Jun 2017 Ask
home   ask   best   2 years ago   
Ask HN: People who completed a bootcamp 3+ years ago: what are you doing now?
193 points by anm89  12 hours ago   155 comments top 50
mabbo 10 hours ago 10 replies      
Note some selection bias may exist in the answers.

If you did a tech bootcamp three years ago and it went fantastically, you're probably reading HN today and will see and reply to this. The more success you had, the more likely you're a developer today!

If it went terribly, you might still be working at Starbucks and don't read HN very often.

postnihilism 10 hours ago 1 reply      
I went to Hack Reactor in 2014 and have kept in touch with many members of my cohort. Just about everyone has been and continues to be employed as a developer. A few have started companies. Three members of our 30 person cohort joined Google, including me.

I was a philosophy major who took some CS courses in college, programmed as a hobby and was working as a product manager. The bootcamp was a great way to build an understanding of the production software development process. It also allowed me to build a strong skillset within one tech stack (MEAN).

The bootcamp was absolutely not an end to my cs/engineering education. When I started at Google the learning curve was steep and I have been constantly taking at least one coursera/udacity/edx course for years as well as company internal classes. Hack Reactor wasn't an end all solution but it gave me a great lay of the land and was instrumental to landing a job of the quality that I did.

werber 5 minutes ago 0 replies      
I'm just about 3 years out of a boot camp and have since transitioned into a UI Dev role which suits me much better than being a straight dev.
lando2319 5 hours ago 2 replies      
Bootcamps have a lot of haters who want to nitpick the details, it makes me glad I didn't think about it too much when I signed up, I just thought, "hey I want to code, they teach coding... I'm in"

first bootcamp (web dev) 5 years ago, second one (mobile dev) 3 years ago. Unlike most in my CoHort, I had no interest in a dev job, I wanted to provide contract work and perhaps join a startup for equity.

> What are you doing now?

CTO at a startup

> Do you feel that the bootcamp prepared you for the jobs you got?

It got me started, which is what I needed, so yes, but it took lots of work beyond the bootcamp.

> Do you think most of your cohort are still working as developers?

I'd estimate over half

IMO Bootcamps are great, you get a nice headstart with learning, you meet cool people, it's unaccredited so any job prospects are going to be obtained with your own blood sweat and tears anyways.

gothrowaway 5 hours ago 4 replies      
I got paid to learn to program. 45k a yr to start off with. Then 70k a few months later.

You don't need to pay a school to learn to code.

The sad truth is, there are recruiters who will throw out your resume if you associate with bootcamps. Why? Because the quality of the programmers they generate is low.

Code camps run like mills. From stories I've heard, they pay instructors as contractors below market rate (20-50k, long long hours) and throw them away with no severance.

That's not even to speak about those who forked over $16,000 you'll never hear of here because they're too embarrassed and afraid they'll get jumped.

Worse, try mentioning anything critical on Bootcamps and they'll create sock puppet accounts to downvote you, harass you and so on.

If you don't believe me, go on /r/cscareerquestions or quora threads mentioning bootcamps. They'll have coursereport.com shilling and trying to keep you from the reality:

You can learn to code on GitHub for free.

You can host repositories on GitHub for free.

You can download Atom (https://atom.io/) and Visual Studio Code (https://code.visualstudio.com/) for free.

You can download Linux for free (https://www.ubuntu.com/download/desktop).

You can watch MIT/Stanford/etc. Data Structures and Algorithm courses online for free: https://github.com/prakhar1989/awesome-courses

Free Programming Books: https://github.com/EbookFoundation/free-programming-books/bl...

Free development services: https://github.com/ripienaar/free-for-dev

And you do not need any college or bootcamp to work at Amazon, Microsoft, or Google.

Seriously, just grab a copy of Cracking the Code Interview.

huntermeyer 10 hours ago 4 replies      
In 2013 I attended Epicodus in Portland, OR. At the time, it was a 17-week Ruby on Rails bootcamp.

I moved back to my home state of Florida following graduation.

Within two months I landed a Junior Rails Developer position at Listen360 - a badass company in Georgia. I relocated and have been with the company for over three years now.

In that time I've developed JrDevJobs.com, a job board for junior devs. Built several side-projects, and taken on contract work at a growing rate.

Bootcamps aren't for everyone, and they don't guarantee success. They are a spring-board and structure for those who are committed and able to learn the trade.

Software development is hard as hell. It challenges your abilities in every way: decision making, risk assessment, empathy, time management, and your ability to handle stress. But for those that love it know the rewards to be worth the struggle.

I'd like to say my bootcamp prepared me for the job I have, but I also know that I was going to become an engineer regardless. I saw the bootcamp as a way to get there faster than learning on my own.

I've toured and given speeches at several bootcamps across the country. I've seen patterns amongst the students: there are those that think they're "done" once they graduate, and those that think they're just getting started once they graduate. The latter tend to outperform the former. Full disclosure, this is totally anecdotal.

I think bootcamps are great for those who love to learn, are always challenging themselves, have a competitive nature, and love technology.

jypepin 5 hours ago 0 replies      
I attended DevBootcamp October-December 2012. I was the third cohort of this Bootcamp, and I believe it was one of the first, I think I'm part of the rare ones who reached 4 years of full time work experience after a bootcamp - which is the length of a CS degree.

I've written a blog post about it here: http://jonathanfromgrowth.com/2017/03/14/From-Devbootcamp-to...

> What are you doing now?Senior engineer at Uber

> Do you feel that the bootcamp prepared you for the jobs you got?Definitely. My first job was at a small YC startup doing Rails (that's what I learned) and that first year there taught me a lot and was a perfect continuation of the bootcamp.

> Do you think most of your cohort are still working as developers?Yes

adamgoodapp 44 minutes ago 0 replies      
Graduated from General Assembly in London 4 years ago. Now working for a Robotics company as a software developer.

Bootcamps are great in teaching you the foundation of software engineering (mainly in a web development role).The biggest learning experience I received was learning how to learn.

During my time I have needed to venture into lower level programming and having more CS knowledge really is a big plus.

I feel like bootcamps could spend some more time teaching general Computer science topics, however you can pick the experience up during your career.

mrborgen 1 hour ago 0 replies      

I did a bootcamp 2.5 years ago (Founders and Coders on London). Today I'm a co-founder of Scrimba (https://scrimba.com/), which is a new interactive video format for communicating code.

I'm mostly doing non-technical work at the moment, though some technical as well.

After I graduated I worked a little over a year as a front-end developer at Xeneta (a Norwegian-based startup).

I could not have gotten a job as a professional developer if I didn't do the bootcamp. Or it would have taken me MUCH MUCH more time. So I'm super happy with my experience. Also, most people in my cohort who graduated also work as developers now.

I've been writing a lot about how my process from non-technical to technical was. Feel free to check it out here:


beefsack 11 hours ago 1 reply      
Many people may have had negative experiences but I feel very few of those would post here, for a variety of reasons.
savanaly 11 hours ago 2 replies      
I did App Academy in New York two-three years ago (10-week bootcamp). I'm now a front-end dev and work from home making about 80k per year. I believe most of my cohort are in the same situation (App Academy appears to be above average for boot camps from what I've heard about other boot camps, but not by much). Although most of my cohort probably stayed working in New York or moved to SF and so make more money but don't get the luxury of working from home.

The boot camp served its purpose in preparing me for the job. Namely, serving as a commitment device to force myself to study the initial couple hundred of hours one needs to be able to do entry level programming from scratch. Plus having them provide a curriculum and teachers was nice too, I guess, but secondary to the commitment factor. Having graduated from that was also probably not a detriment to have on my resume and I keep it on there since I have no other programming related education.

I suspect my experience is not unusual-- that the boot camp's value is in being a catalyst that unlocks someone's ability to be a programmer and teach themself most of the skills they need, rather than in being an information-imparting institution.

pharrlax 10 hours ago 0 replies      
Graduated coding bootcamp 2.5 years ago. Currently on my 2nd developer job, making 750% of my pre-bootcamp salary. Most of my classmates continued on to do development professionally. Most commonly focused on Node and frontend JS frameworks, i.e. Angular 1 and React.

A handful tried and failed to get development jobs, and went back to their old career, or pivoted more or less laterally to a tech-adjacent field that pays less than development. I can tell you that 100% of the people who failed to get development jobs were people who, during the bootcamp, visibly put in the bare minimum of effort to skate by.

santaclaus 11 hours ago 0 replies      
I know a few folks who did a six month bootcamp almost exactly three years ago. At present they are: two front end devs, three back end devs, two 'enterprise' (aka Java) devs, a dev evangelist, a devops, a stay at home dad, a currently job hunting, and an agile consultant.
brookside 5 hours ago 1 reply      
I attended a bootcamp Winter 2013-2014, after making a last minute decision not to attend grad school for something unrelated.

My choice was almost entirely pragmatic, and was heavily influenced by the book So Good They Can't Ignore You[0] by Deep Work author and Georgetown CS professor Cal Newport.

As for the bootcamp experience - I have trouble focusing for long classes, and would have benefited from a couple or more months of pre-study. (Classmates who did the best during the course had the most prior knowledge.)

However, the camp was a great launching point. I did work my ass off, staying up all night to work on individual and group projects in the lobby of the Ace hotel. If anything, the bootcamp helped solidify my own internal identify shift.

3.5 years later, I'm happy with my choice. I'm currently working remote for a startup and teaching evening intro to coding classes (yeah, at a bootcamp, so take my account with however many grains of salt). I really like teaching, and enjoy the intellectual challenge, salary and freedom provided by my day job.

Most of my classmates who I am in touch with are working as developers and seem to be doing alright also.

[0] https://www.amazon.com/Good-They-Cant-Ignore-You/dp/14555091...

planxty 11 hours ago 1 reply      
I graduated from General Assembly in the summer of 2015. That is less than 3 years, but I can tell you that my outcome was very positive. I am now a full stack developer team lead in a quickly growing web application company, and I was certainly empowered by the training I received. Self study is great, but I was able to leverage the kick in the pants I received from my teachers.

As for my colleagues, I believe most are employed, but I will offer that you only get what you put into that kind of intensive training. It's only meaningful and effective if you really care. The folks who might have been enticed by a cool job in a growth sector don't do as well as those who code simply because it's a compulsive habit and joy.

I'll submit that there are myriad things you can't absorb in a brief program, that's life. If I was rich I would live to go to college again. But I would also say that I've met plenty of CS grads of traditional 4 year programs that don't have the same drive or problem solving skills as that I've seen come from bootcamp students.

Worth it, especially if you're a grown up with the passion to push yourself and the maturity to follow through.

Hype is all nonsense.

ericdykstra 5 hours ago 0 replies      
Hey! I graduated from Dev Bootcamp in Spring of 2013 as part of the 3rd cohort of that year (when they switched from classes to cohorts), which I think puts me in the first ~150 or so of people who did a "bootcamp."

> What are you doing now?

I'm a programmer working for a startup company in Tokyo.

> Do you feel that the bootcamp prepared you for the jobs you got?

The primary focus when I went was learning how to "think like a programmer" and learn while building. This let me contribute at least marginally at my first job as I gained more experience through just building more.

It seems like the focus has shifted, though, from what I've seen. I don't think I would choose to do it now, given the current messaging.

> Do you think most of your cohort are still working as developers?

I haven't checked everyone individually, but at least 50%, maybe more.

CellularArrest 5 hours ago 0 replies      
I graduated from The Iron Yard in Charleston about a year ago.

I had a couple of interviews the week following graduation which didn't turn into anything. Since then I've been continually applying to jobs and trying to put a decent portfolio together. I can't seem to land an interview anywhere.

Realistically, I'm aware my lack of a degree and long list of irrelevant jobs are likely getting my resume tossed into the trash. I assumed at the very least that I'd be able to land a QA job that I could try to pivot towards development later.

It can be a bit difficult to stay motivated to code/practice/study/apply while also working a 40 hour week at a soul sucking job. I find myself pining for an entry level job so I can at least combine my desire to continue to code with a job. At this point it's the only reason I keep going.

speaktochris 10 hours ago 0 replies      
Attended a local bootcamp-like program in my area. Afterwards started working at a local startup as a jr dev. The pay increase wasn't as astronomical as they hype at the time suggested but I knew it was expanding my opportunities way more than my previous gig.

The startup then got acquired and I got experience working with a larger company. Left that after a while and now have my dream job as a Developer Advocate! Literally the job I have wanted ever since I got into programming and attended my first hackathon. Can't believe where I am now.

To answer your other questions:

1) Did the bootcamp prepare me for the job? Yes, but only in that it taught me Rails and I could begin working at this startup that did mostly Rails. The startup took a chance on me, I think that's what really prepared me to succeed.

2) What about my cohort?During the program me and some other devs worked on projects outside of the class. We attended community events, hackathons, and worked on OSS with local devs. All of those that participated in stuff like that with me all went on to have successful careers. Those that didn't? I think they're still taking classes or interviewing for jobs.

michelleclsun 8 hours ago 1 reply      
I went to Hackbright in 2012 and in 2013 started a kids coding education company First Code Academy (firstcodeacademy.com) in Asia, covering Hong Kong, Singapore and Taiwan today. We have taught over 4000 students since 2013 and growing strong :)

Hackbright paved the foundation for me to start my own company. Couldn't be more grateful for that!

nearlynameless 10 hours ago 2 replies      
I went to Dev Bootcamp in 2012. I was self taught beforehand, and had done a little bit of contracting work.

They focused pretty heavily on soft skills, like communication and pairing, and also somewhat on generic software construction ideas, on thinking through a problem and breaking it down into its component pieces. The curriculum used JS and Rails, although I didnt feel that I had much more than a surface familiarity of either by the end of the cohort.

I think that, in general, if a bootcamp has a decent focus on software construction and doesn't totally fall down on teaching you the technical stuff, youll probably be prepared to work, at least, as a junior dev. But, you can't just rely on a bootcamp. You really have to spend a lot of time (like, a ton of time) learning on your own, writing code and reading code others have written.

Since then, Ive been working steadily as a mostly front-end and sometimes full-stack developer.

My cohort was a little weird, people went on to do other stuff, like start their own bootcamps. But, I believe most of the people who wanted to be devs are still doing just that!

foo-man-chu 6 hours ago 0 replies      
I graduated CodeFellows in Seattle 2.5 years ago.

I've been gainfully employed as a software dev since about 6 weeks after graduation, fist as an "associate engineer" then promoted to a regular engineer.

My bootcamp focused on Node/Mongo/Angular, but after I got my first job most of the work needed to be done in Rails. The bootcamp did not directly prepare me to work with Ruby, but it taught me how teach myself new skills and be okay with being in over my head. I was able to get up to speed after a couple months. I have gotten comfortable working with a lot of cool technologies since then - including Docker/Kubernetes, Kafka, and various tools for running distributed systems. Now I mostly work on the front-end of the product with React/Redux.

I feel comfortable working with much more complicated code than I did 2 years ago, and I keep getting good performance reviews.

I can say that going through the bootcamp definitely put me into the right mindset to be successful as a software developer. Often I was given vague answers left to figure something out for myself, which is pretty spot on to my current work.

From what I gather through Linkden and Slack, the top 2/3 of my cohort is in a similar situation, with the rest still getting Jr. level jobs and a couple who gave up altogether on the software thing.

travisjungroth 11 hours ago 1 reply      
I'm going to speak for my girlfriend who went to a bootcamp about two years ago. She says it didn't really prepare her (she did that on her own through self study) but it did open up doors. She's a data engineer at Airbnb.
lukedavis 11 hours ago 2 replies      
I did Hack Reactor in 2014 and work at Google now as a software engineer (it's currently 2017).
lbrindze 5 hours ago 1 reply      
Fwiw I never went to a boot camp (nor have an engineering degree of any kind).

I was lucky enough to have a few opportunities where I was paid to learn. Got my first big boy developer job at a startup in Santa Monica in oct 2014 after working as a scuba instructor. Now I work very part time from a boat sailing around the sea of Cortez. I can only do this because my resume is solid enough that picking up short term freelance work is not impossible.

If you want to learn something (or do something for that matter) I think passion is the first and most important ingredient. If you want it bad enough the opportunities will manifest themselves.

rajangdavis 11 hours ago 0 replies      
I graduated from the Web Development Immersive at the end of 2014 from General Assembly.

I was able to take what I learned and apply it to a CRM that I had worked with for years prior to going to General Assembly. I was able to develop services around this CRM that my former employer still uses and I was recognized by the company that provides the CRM for my contributions within their CRM's community.

Right now, I am on my own, still trying to figure out where to go next. I think the biggest takeaway I got from the program was to keep learning; it's part of why I keep coming back to hacker news.

mathattack 11 hours ago 1 reply      
I know a few physicists who did a data science bootcamp ~3 years ago. I was very unimpressed with the boot camp itself, but they've become solid data scientists.
yeahbaby 11 hours ago 2 replies      
I went to a code bootcamp 3 years ago. Now I make over 6 figures doing java in a LCOL state.

The code place I went to did a really good job preparing me for the actual work. I am a senior level contractor and actually get to work on interesting stuff.

I know over 10 people off the top of my head who also went to code bootcamps and are all making over 70k in LCOL locations. They are thriving and not hack's in the least.

dvdhnt 8 hours ago 0 replies      
I went to The Iron Yard, their very first offering in Atlanta, back in 2014. My cohort was focused on full-stack development; it started with Ruby, Sinatra, and finally Rails.

I graduated that summer and immediately began doing contract work with a couple fellow graduates. By the end of 2014, I had moved my family to Chattanooga to work for a startup in the eSports space. It was a Rails shop and they had grand plans but the senior developer left and our CEO decided I could take the lead. To be blunt, I wasn't ready, obviously, and knew it. I wanted to be a part of a team and have room to make mistakes (plus be mentored); you can'd do that when you're the only developer then lead developer. So, by spring of 2015, I joined a wellness startup (awesome team) in town and have remained there ever since.

In the beginning, all I did was write tests. I started to contribute to features on both the front and back ends. Now, I own entire features, make design decisions (re: database, code, and the stack), implement CI/CD, review code, and randomly build things in other tech (like an iOS app for testing Firebase Cloud Messaging integration). There's no way I could have done much, if any, of this fresh out of bootcamp.

Bootcamp got my toes wet and taught me, beyond introductory full-stack concepts, both how to read documentation and to accept that programming is hard. Those two lessons are what really helped me to become a professional developer. My team accepted me because I was still passionate even after learning so much so fast. They also were confident that when presented with a problem I would either have a solution, know how to go find one, or be smart enough to ask for direction (that last one took more time to develop than the others).

To be fair, I was an intelligence analyst by trade prior to bootcamp, so I definitely had previously developed skills useful to programming. However, as others have said, bootcamp was/is a springboard that provides structure to the process.

As for my peers from the cohort, I think MAYBE half are still developers and a few own companies.

magoon 7 hours ago 0 replies      
Not an attendee. However, a client hired several older people who rejuvenated their careers with coding bootcamps and I find them to be extremely competent developers. Recommend.
w1zeman1p 10 hours ago 1 reply      
I went through App Academy in 2013, I'm a Developer for a small startup in SF applying some of the skills learned at the bootcamp. I feel like its pretty good prep for super entry level work. Most of my cohort is still employed as software engineers or has been promoted to director / CTO level positions.
llamataboot 7 hours ago 0 replies      
I completed a bootcamp about 3.5 years ago. I've been programming full-time with stellar reviews since then. I would say probably about 30% of my cohort are full-time programmers, but that's just a wild guess. I know some of them went into other things.

I've seen quite a few people graduating from bootcamps now that have struggled more to land that first job. It seems like the jr dev market is starting to get a bit saturated.

philpee2 10 hours ago 0 replies      
I attended App Academy nearly 3 years ago. I'm currently a software engineer at Airbnb. I haven't kept in touch with everyone from my cohort, but I know some of them are working at Lyft, Uber, Google, Slack, and 23andMe.
handbanana 11 hours ago 3 replies      
Finished bootcamp mid 2014, currently a Software Developer (full stack) making 105k base (110k total package) with some great benefits (and no state income tax).

I had zero background before the bootcamp, and the bootcamp itself was pretty shocking.

The biggest part of the bootcamp was having it on my resume - giving my limited knowledge "legitimacy".

EDIT: My starting salary was mid 40s after I finished bootcamp. And I felt like I knew nothing for a good 6 months - luckily many employers are happy to take chances on you if you're willing to learn and have common sense.

I'd advocate something like freecodecamp to others looking at bootcamps that can't afford the "good" ones (hackreactor etc)

cagataygurturk 4 hours ago 1 reply      
Why the most of bootcamp grads go to frontend jobs? Is it easier?
adrice727 8 hours ago 0 replies      
I attended Hack Reactor in 2014. I'm currently an engineer at small PaaS company.

I don't think I was job-ready upon graduation, or at least I didn't feel that way at the time. I spent a few months helping out s bootstrapped startup while looking for a job and learned a lot from working closely with the CTO. I stayed on with the startup while working a contract gig and eventually left both for my first full-time gig.

timbuckley 9 hours ago 0 replies      
I graduated from App Academy NYC in January 2014.

I'm in my 2nd post-bootcamp developer job at a small-ish company, making double my previous salary before a/A. I love what I do and attending the bootcamp was the hardest and most rewarding thing I've done in my professional life.

I keep in touch with some friends of the bootcamp (my cohort and others), and they have gone to work at various companies like Spotify, Google, Thoughtbot, Bloomberg, Capital One, Vimeo, Tumlbr, WeWork, and lots of smaller companies.

maddcastles 6 hours ago 1 reply      
I graduated from General Assembly in NY 2 years ago. I worked as a junior dev on Long Island for 6 months. Then I hopped across the pond to Berlin, Germany to teach at a Bootcamp whilst I travel Europe. It's been a dream so far :)
zumu 9 hours ago 0 replies      
Most of the people I bootcamped with do not religiously read HN, but of those who do, most of us have solid jobs.

This is obviously an anecdote, but I think it's logical those who had bad experiences and did not end up developers most likely do not read HN.

jacques_chester 10 hours ago 0 replies      
Where I work we have a fair contingent of bootcamp alumni who joined in the past 3 years, some of whom have now moved into engineering and product management.

They tend to have started with strong backgrounds in something else. People who would excel in a lot of fields, in no small part because they continue to learn.

stickperson 9 hours ago 0 replies      
Since most people responding here have some sort of technical job, what sort of stuff are you working on? All of the bootcamps I'm aware of focus on web development. Do you still do strictly web stuff? Frontend or backend? Anything else?
spasiu 10 hours ago 0 replies      
I graduated over two years ago from makersquare. I was a Dev for those two years, now I'm moving into developer experience work. I'm very happy with my career.
eggie5 10 hours ago 0 replies      
probably a lot of selection bias on these responses.
bacontacos 10 hours ago 2 replies      
Graduated from Hack Reactor in 2014. I'm a Senior Software Engineer at a large company now.

I was prepared enough to not totally screw things up at my first job. I was an expert in Javascript and reasonably knowledgeable at data structures and how to implement basic web stuff.

I'm now more focused on back end things...AWS, infrastructure, services, etc.

As far as I know, most of my cohort is still working at good jobs.

bootcamp1 10 hours ago 0 replies      
A lot of people who attend programming bootcamps seem to be coming from other backgrounds or relatively new to programming.

Interested to hear the experience from anyone who was already a developer and took a bootcamp. Was it was worth it?

songzme 2 hours ago 1 reply      
Thanks for asking this question, I've been meaning to write a blog post but I haven't gotten the chance. Although I didn't attend a bootcamp, I've been teaching coding since I started learning coding (Junior year of university): http://dailybruin.com/2011/11/03/computer_science_student_so...

For what its worth, I feel empowered by your question to write and here is my story (unfiltered, so please be understanding):

My first internship (senior year) was with facebook. During that internship, I committed myself to teaching my best friend (B) how to code. He was a musician who could not find an internship with his econ degree and was worried for his future. He reached out for help, and when your best friend reaches out for help you make it work with your schedule. So everyday I went home after my internship to teach him, and on the weekends we went to hackathons and worked on projects together. I listened to his frustrations, adjusted my expectations from a beginner, and worked with him to help him become a better coder in hopes that some day he would be at the same level as I am. (His family also lived around the area at the time so I got to live with his family rent free and his mom cooked delicious food for us, so I felt that I got the better end of the bargain).

(After my internship)Right before I graduated from college, I met a wonderful girl(A) and we started going out. I moved to the bay area and she followed after graduation and moved in with me into our cozy one bedroom shared apartment in the heart of SF. Unfortunately, she felt intimidated and it was hard for her to settle in as someone with no technical background. It seemed as if all conversations would end up technical and leave her isolated. It was incredibly frustrating for me to hear someone feel that way so I made it my mission to talk about my work in a way that a 5 year old could understand. I refrained myself from using technical terms and I tried to create analogies to everyday life for the problems I encounter at work (I did not tell anybody this, it was more of a personal mission).

I'd like to think I had an impact on (A), but who knows? Over a couple of weeks since living with me, A decided to apply for App Academy and was accepted! She continued with her job for a few months until her cohort started, then quit and immersed herself with Rails and JavaScript (their curriculum is not something you can keep up with part time). Although we lived together, she was so exhausted after her day that I had no glimpse into her curriculum. She received all the help she needed from her classmates and all she wanted after a long day was just some relaxation and Netflix. Once in a while, I participated in their social activities and I met other students of her cohort. They were just like A and I: ambitious, hopeful, and eager to learn the things we believe will help us achieve our goals. As far as I know, everyone at A's cohort did great; A landed a job at Cisco, receiving a salary almost 3 times what she was making as a support staff at Academy of Arts University (AAU).

I saved and bought a house in the bay. My friend (B) and my girlfriend (A) moved in with me. I felt lucky to be able to afford a house in the bay area and I wanted to make sure the people I care about has the same luxury. B saved and bought his own house. A saved and bought her own house. I associated their success for my own and I thought I was invincible. I thought I had a gift for teaching and inspiring people so I committed myself to teaching another friend whom I used to know in high school. He worked hard and in 3 months got hired as a front end developer at American Express. I thought his success validated my teaching abilities but this was a short-lived euphoria: A broke up with me because I was distracted and did not fulfill my role as her partner. B moved into his new home and the commute deterred us from hanging out. I was alone.

In the midst of my solitude, my mom successfully convinced me to buy a 3 unit property in Oakland. I didn't care much for it because I have a blinding trust towards my parents. I focused on my own personal growth and landed a job at Google on the analytics team. I worked with an incredible team (some of the brightest people I've worked with) but unfortunately my heart was not in the right place. In the 13 months I was with Google, I probably submitted less than 50 changelists (merge requests). Out of respect for a great team and a great company, I quit.

The past 2 months has been the most fun I have ever experienced. The 2 properties that I invested in produced enough income monthly for me to be financially secure. Without a financial burden, I was able to consolidate everything I had ever learned about teaching coding and come up with my own original curriculum. The realization is profound. Currently I have 4 students (a recently divorced mom who had been a housewife for the past decade, a high school student, a army veteran looking for new opportunities, and a former software test engineer who felt discouraged with her technical growth), and from their diverse background I have learned a few things that I would like to share.

Learning coding in a class of 40 with a 3 month curriculum is not only a bad way to learn, but it amplifies the problem we have with our education system today: Everybody learns at a different pace, understands things at different times, and thus it is wrong to expect everybody to follow the same curriculum with the same timeline. This traditional way of learning prevents students from building a strong foundation, which is essential for their technical growth. It is much more efficient to create a system for people to learn at their own pace than to impose a syllabus with dates for getting things done.

Programming is a team sport, so it is important to realize from the beginning that your code could have a profound impact on somebody else's code. From my personal experience, most technical backlog comes from engineers being ignorant about the potential impact of the code they write. When my students join our team, we teach them the basics and get them going on our Github open source projects right away (submitting and reviewing pull requests): https://github.com/llipio/algorithms

Programming is a team sport, so it is important that when a new engineer graduates from the basics, he/she is put into an ongoing project that multiple people at their level have working on together as a team. Our projects (web and mobile) are all in production with real users to emulate a real working environment. You can checkout our app by searching for (llip) on the app store or visit https://llip.io.

Every Saturday, our team (in full force) attends our local Free Code Camp meetup and helps any beginner learning how to code with their questions and unblock them on their journey.

I'm still figuring things out, so if you want to grab coffee I'd love to share ideas. My email is song@zheng.club

Thanks for reading!

divmain 6 hours ago 0 replies      
I attended Code Fellows in October-December of 2013. I had held a handful of tech-heavy positions prior to that time, but had never worked as a software engineer/developer.

I originally saw three primary benefits to attending bootcamp, and I think they're still relevant:

1. It gave me some credibility. Before bootcamp, I had worked with children overseas for a couple of years, and as a care provider the year before that. I had considerable tech experience further back, but nothing related to software development. My resume would have been easy to discard without some way to get connected with employers.

2. It enhanced my motivation. I was paying a lot of money out of pocket, so it placed pressure on me to follow through. I also enjoy working with people, and the classroom setting exceeded self-study in a number of ways.

3. It provided people I could go to when I was stuck. This only happened a half dozen times over the course of the program, but any one of these times might've derailed my interest or motivation.

Overall, my experience was very positive and I was offered a position at Formidable Labs (now just Formidable) before graduating.

It has gone rather well since then. I started as a junior engineer on their Walmart project and progressed to a senior position on my team within the year. A few months in, I received a ~30% raise.

From there, I joined the Walmart Core Web team. That involved building foundational libraries, components, and patterns for the rest of the web teams, as well as a lot of broad architectural work. After a couple of months on that team and some significant successes, I took on additional responsibility, which coincided with another ~35% raise.

Since then, I've worked on Formidable projects for Microsoft and Starbucks, in senior and lead roles. Starting Monday, I'm joining the Edge browser team at Microsoft as a program manager.

Its hard to know what I should attribute my success to - I definitely went into bootcamp with the intention to make the most of every opportunity that came my way, and I continued in that mindset afterwards. I jumped at every chance to learn something new, and spent considerable amounts of time outside of work learning and doing OSS. A few of my projects [0][1][2] got relatively popular (others, not so much [3][4]). All of these were side projects that I pursued independantly, and I think that increased my desireability as a team member. A lot of it was probably timing and luck too!

It's worth noting, however, that my experience was atypical and not in line with the rest of my cohort. I know at least a handful that struggled to find positions.

[0] github.com/divmain/GitSavvy[1] github.com/FormidableLabs/rapscallion[2] github.com/FormidableLabs/freactal[3] interlockjs.com[4] github.com/divmain/recollect

cdt_hiker 6 hours ago 1 reply      
I went through a boootcamp several years ago. Before joining I had done a small amount of dev work (mostly trying to debug simple js errors) for an existing employer and researched bootcamps all over the country before deciding on one. Since then I've worked at several companies and have been in charge of hiring a couple people, both jr and sr to myself, and in the process have interviewed a number of other bootcamp grads. My general thoughts:

-Bootcamps are insanely overpriced for what you are getting. Most seem to have a decent student to instructor ratio but almost always the instructors are recent graduates and lack the technical skills in a lot of areas. They could help out on general syntax errors but lacked debugging skills that most devs outside of extreme entry level posses. In the past two years the cost has continued to rise almost exponentially and the trend of hiring former students seems to have continued.

-I'm sure this varies by bootcamp but they seem to paint too wide of a brush. In ten weeks they will touch on both front and back end and give the attendee the illusion that they are "fullstack devs". This is great because you have a nice shinny Quara clone to show off at the end but in reality most people will walk away with little understanding of either. I would rather bootcamps focused on one area (probably client side) and briefly touch on the other end. For my bootcamp I specifically said up front I was interested in the backend and was assured that they tailor the curriculum to the student. In reality it's more a one size fits all.

-Students can't problem solve for themselves. A lot of students (and I include myself in this) couldn't handle issues that could be solved with a basic google search. Some people figure this out fairly early, others carry it on into their careers, but it seems to be especially prevalent with bootcamp grads.

-Students walk away with unreal expectations. Having friends and family that have gone through bootcamps in both large and small markets the salary and employment numbers don't seem grounded in reality. I'm sure this depends on the market but it seems like a lot of people end up taking short term low paying jobs straight out of bootcamp and while some of them find other dev jobs a not insignificant amount don't. Also a lot of people end up being pressured into taking tech but not dev related jobs by their bootcamp, presumably so they can collect a placement fee. The bootcamp I went to is fairly well regarded (you have probably heard of it) and I've never been contacted by them about my employment status, and I know a fair number of people either went back to their old careers or are marginally employed in the tech field (yet they still claim a high placement rate).

-I'm SURE this depends on the bootcamp but mine seemed to openly play favorites. At first it was great because of extra attention but after a number of staff openly ridiculed a guy on the spectrum I became extremely disheartened. A bootcamp should be about education, not a popularity contest.

After my bootcamp I didn't feel ready to be employed and opted out of the opportunity to meet perspective employers. This was met by numerous "talks" by the staff trying to convince me to attend, presumably so the bootcamp would get a cut of any offer I took. In the end I spent a fair bit of time consulting in my previous industry before finally feeling ready and taking a job as a developer (although the job search in a new market was brutal). Since then things have been great and I'm extremely happy with where I ended up, but I'm still disillusioned with the bootcamp model. Part of that is at due to my experience and partially due to interacting with bootcamp devs both in interviews and with employees at my current company.

We are starting to look at hiring two new people at the company, one is for a non dev role who might have to deal with some basic html and css, I'll probably hire out of a bootcamp for this position. The other will be for a full dev position. I'm hoping to poach within the company on this one (from somebody with no experience but who has the interest) but if not I'm going to give self taught or CS grads priority.

If you are looking to change careers and just want to work in tech. A bootcamp is probably a way to get your foot in the door. If you really love programming go back to school (I wish I had, cs masters are pretty cheap) or really work on your own, network like crazy (buy as many beers or coffee for as many devs as possible) and build something really cool. Most people won't notice it on your resume but one or two out of a hundred will and that is all that matters.

christinahuang 9 hours ago 1 reply      
what are your thoughts on all-women coding bootcamps (ie hackbright in sf and grace hopper in nyc)?
cosmocrackers 11 hours ago 1 reply      
I graduated a python/django bootcamp in Aug 2014, became a Software Engineer right afterwards, and I'm now a Engineering Manager at a startup in San Francisco. I believe just under half of 21 are writing code in some developer type role. Definitely there were others there who were only looking to gain technical understanding for more Product/Marketing/PM type roles.

If you do your prep work and are ready to dedicate 100% to the bootcamp and all that it entails, you will certainly be successful and find the job you want. If you are not fully prepared for the commitment it takes, you will likely not fulfill your expectations.

You get out of it what you put into it.

tu7001 2 hours ago 0 replies      
I didn't read the comments, but the question is: People who completed boot camp 3+ y ago, and don't have a CS degree, what r u doing now?
Ask HN: What are we doing about Facebook, Google, and the closed internet?
467 points by vkb  16 hours ago   289 comments top 52
doke01 14 hours ago 10 replies      
Make your website of record your website. Make social media platforms and others (e.g. Google) secondary to that. Don't let Google and Facebook control how you build your website. I am amazed at companies that take their websites and subjugate them to their Facebook page. You may gain social attention but you are handing over control. Never, ever, ever say to contact me go to facebook.com/xxxx or my email address is xxx@gmail.com. Your site is yoursite.com and your email is youremail.com. Your login to the sites you build are email addresses, not tied to social media providers. The closed internet providers are enhancements to your sites. They do not take the place of your site. If you follow this philosophy, you are supporting the open internet. Own your .com. Don't let others own you by taking that from you.
aaronpk 15 hours ago 5 replies      
I am a member of the W3C Social Web Working Group (https://www.w3.org/wiki/Socialwg), and have been organizing IndieWebCamp (https://indieweb.org/) conferences in this space for the last 7 years. We've been making a lot of progress:

* https://www.w3.org/TR/webmention/ - cross-site commenting

* https://www.w3.org/TR/micropub/ - API for apps to create posts on various servers

* https://www.w3.org/TR/websub/ - realtime subscriptions to feeds

* More: https://indieweb.org/specs

We focus on making sure there are a plurality of implementations and approaches rather than trying to build a single software solution to solve everything.

Try commenting on my copy of this post on my website by sending me a webmention! https://aaronparecki.com/2017/06/08/9/indieweb

delegate 13 hours ago 5 replies      
There is no going back, this 'battle' was lost a long time ago.

We've tried so hard to make technology ubiquitous and accessible to everyone. We thought that that was a good idea at the time, except we didn't really understand it entirely.

The consequence of ubiquitous technology is that the majority now has access to powerful tools to 'express' themselves while being subjected to constant brainwashing into behaving in predictable ways - purchasing, thinking, liking, voting, etc.

By 'expressing' themselves, they contribute to a cacophony of content, which makes it very hard to discern truth from fabrication, leading to confusion, apathy and insecurity, exactly the sweet spots that advertisers of all kinds target.

A small minority profits greatly from this system, while the users themselves are rewarded with a 'virtual self' which is slowly taking over their 'real' self, making even the idea of losing it scary. This mental trap is very powerful - just look at the number of 'zombies' on the streets - people interacting with their phones there and then, disregarding others and their personal safety..

The remaining 5% who are aware of these issues get to share all the alternative technological solutions and monetary scraps left over from the big fishes.

So I don't think there's anything to 'do' about it - just be aware of it and try to stay away from large crowds.

I respect and applaud the efforts of so many who try to build distributed and anonymous systems, but I'm very bearish about any of them becoming 'mainstream' for the reasons described above plus this one: most people don't care about these things.

Those who control these systems are some of the most powerful people in the world. In time, they will get older and more conservative. Soon they will venture into politics on a global scale.

Considering the alternatives, maybe that's not the worst thing after all.

bhhaskin 15 hours ago 5 replies      
I think the solution is pretty simple. Keep building things. Make person websites and build communities. Don't host everything on major hosting providers like Google or Amazon. Don't rely on Facebook or Google for login or integrations. They only have so much power because we let them. It's more often than not the easier solution. Use tools like GPG, IRC, Email and encourage your friends and family to do the same.

The internet hasn't changed, we have, and the only way to take the internet back is if we change ourselves back.

sillysaurus3 13 hours ago 4 replies      
What I'm getting from this thread is that we're sort of fucked. The only way to stop Facebook and Google was to become them before they had a chance to. That way you'd presumably be more benevolent. Maybe that's true for Facebook, but it's still hard to imagine for Google.

I think the bigger problem is cross-generational power. YC itself is somewhat terrifying in this regard, but that's a different topic. In regards to Google and FB, even if we like Google now, we probably won't like the Google 60 years from now. But what is there to do?

Google stopped Microsoft by making Microsoft irrelevant, in the "Microsoft is Dead" sense: Nobody is afraid of them anymore. But people fear Google and FB. Imagine a Microsoft competitor to your startup vs a Google or FB competitor.

This could be a lack of imagination, but it's very difficult to imagine some new company making Google or FB irrelevant in the same way they made their predecessors irrelevant. Think of oil fields. At one point, before oil fields were monopolized, I've heard the ecosystem seemed pretty similar to Silicon Valley circa 2008. Everybody seemed to be able to get a slice of the action, and while it took determination and luck to get involved, it was possible.

Now the oil industry is on lockdown. Imagine asking "What are we doing about Exxon Mobil?" or Walmart. You can't do a damn thing, and there's no shame in admitting that.

As defeatist as it is, we may want to start thinking about ways of riding out the next 40 years in a productive fashion. It's more beneficial to say: Ok, Facebook, Google, and the closed internet are here to stay. Now what?

For example, if you're really set on doing something about it, one of the most effective things you could do is try to join the companies and shape them yourself.

Arathorn 15 hours ago 0 replies      
Building matrix.org as a decentralised & e2e encrypted comms alternative.

The filter bubble problem is particularly relevant for us because it's critical for an open network to let users filter out abusive content (whether that's spam, stuff they find offensive, or just a topic they don't care about)... but doing that in a way which doesn't result in creating a profiling db or creating bubbles and echo chambers. The problem is one of letting users curate their own filters (including blending in others' filters), whilst keeping the data as privacy protecting as possible. It's a fun problem, but on our medium-term radar.

vdnkh 15 hours ago 2 replies      
I believe it's more effective to focus on a "small business" approach to decentralizing the web, where we focus on smaller companies providing services, rather than a "tin foil" approach where we encrypt and decentralize everything into tiny islands. I work for a video player company and while we aren't a platform like Youtube, we indirectly compete with them for ad dollars (along with Facebook). Something like 90% of ad dollars go towards them already. Most publishers do not like them. I think it's a lot easier to decentralize the internet by having the websites that 99% of users visit powered by smaller internet businesses rather than AmaGooFaceSoft.
pascalxus 11 hours ago 2 replies      
I've seen a lot of good comments on this page, but we really need to start looking at the problem from a customer's point of view.

Why should the end user care about this problem?

Have you heard your non-entreprenuer/engineer friends or others online complain about this problem?

If the answer to above two questions is Negative, then the problem/pain point simply is not large enough to fix.

And, as a potential success case to model our strategy off of, we should be looking towards DuckDuckGo, they've written some good material on how to do it.

gobengo 15 hours ago 0 replies      
* W3C Social Web Working Group - https://www.w3.org/wiki/Socialwg

* ActivityStreams 2.0 - https://www.w3.org/TR/activitystreams-core/

* ActivityPub - https://www.w3.org/TR/activitypub/

* https://distbin.com - My implementation of the above. Who wants to federate?

rglover 15 hours ago 0 replies      
Keep a personal website (avoid Medium, et. al.)

The internet is only closed if we keep acting like it is. The protocol is the same. Go build stuff.


Tharkun 14 hours ago 3 replies      
My biggest gripe with the "modern internet" is e-mail. MS and Google dominate the e-mail scene, and they are making it ever more unpleasant to run your own mailserver. They will frequently blackhole mails, without bounces, warnings or any recourse.

I'm not sure what can be done about that, but it's certainly becoming an up hill battle.

mbrock 14 hours ago 1 reply      
I'm a resident in a "neighborhood activist collective" and I made a self-hosted web site for the house. Now it's expanding into a web app that's a tool for the organization (planning, etc). It's also being set up for similar houses in the same city, and we plan to make it into a kind of federated small-scale "social network" built around our own principles and premises.

Another aspect of the project comes from a "house terminal" that I set up here, basically an offline Raspberry Pi running GNU/Linux and a custom chat/guestbook program that runs as a "kiosk". This terminal will morph into a kind of in-house only access to the federated network with real time communications etc.

ianopolous 13 hours ago 2 replies      
I'm betting on (and contributing to) IPFS [1]. Some friends and I are working on Peergos [2], which is built on top of IPFS to replace dropbox, email and facebook with a P2P secure and private alternative.

[1] https://ipfs.io

[2] https://peergos.org

teekert 3 hours ago 0 replies      
I play with IPFS, use Linux, use Mastodon, use Nextcloud in my basement with davdroid. I use FB only in the browser I don't use in (both on mobile and laptop I reserve Chrome for these things). I avoid where possible Whatsapp and use Signal. I have a mailserver with a local (Dutch) company with my own domain. I publish anything on my self hosted Drupal instances. Is it more time consuming and more difficult? Yes! But also more fun. I like the term slow computing: https://www.americamagazine.org/content/all-things/slow-comp...
beefman 12 hours ago 0 replies      
It's too late. The culture of free exchange that existed on the usenet, over e-mail, and on the early web died circa 2013.

It's tempting to blame Google and Facebook, and they definitely converted a lot of public value into private value. But I suspect it's mainly down to self-selection bias of internet early-adopters. I call the present state of affairs "eternal October".

stretchwithme 7 hours ago 0 replies      
Just because there are closed houses in the US doesn't mean I can't travel from coast to coast. Or build my own house with whatever rules I want.

If, instead, I had no freedom to build a house at all or the rules were dictated to me by others, I would be less free. And poorer.

warmfuzzykitten 12 hours ago 1 reply      
Most of this thread seems to interpret "we" as referring to people who think Facebook and Google are problems. If the "we" refers to internet users as a whole, then the answer is clearly that we like Facebook and Google very much and are using them more and more because they are best for doing what we actually want to do - talk to our far-flung friends and find answers to questions.
austenallred 12 hours ago 1 reply      
Honestly? I'm not doing a damn thing. Forgive me for this, but the internet has been a walled garden for some time now, and the vast majority of humans just don't care. I haven't seen anything that's going to change that. The Internet requires a login, and your privacy being dead is a foregone conclusion.

It's easy to trash Facebook, but clearly it provides an insane amount of utility, and people aren't willing to stop using it because of others saying that en masse that is bad for a hypothetical Internet they never really took part in anyway.

IMO the focus should be getting the government to keep its hands off of it. That's not only more possible, but infinitely more important than not letting Facebook try to show us the right ads.

gwicks56 15 hours ago 2 replies      
Be interested in what HN thinks of Maidsafe, Storj etc. Basically decentralised versions of the internet or the cloud based around blockchain technology.

Storj for example is an order of magnitude cheaper than AWS, uses peoples spare hard drive space, encrypts everything and back it up using peer to peer tech.

I am currently pretty comfortable as an Android dev, but I am wondering if I should start learning everything I can about blockchain tech in order to help on projects such as these?

intended 18 minutes ago 0 replies      
Heres a question - what are the kids using?
jgaa 5 hours ago 0 replies      
Me?I don't use Facebook. I consider Google evil and harmful and avoid them. On my phone I run my own apps, and apps from F-Droid - I don't even register with Google. I have a shit-list of companies I will never work for (Oracle, Microsoft, Apple, Google, Amazon and every Government entity anywhere in the world). I browse the net from VM's with specific purposes (one for HN). I use Tor for most browsing, including reading news. If I have to provide data somewhere, I make sure it's incorrect. I host my own content on my own servers, or on rented VM's (not AWS). I host my personal home-page on a VM hosted by a pro freedom of speech NGO, that will go to great measures to keep it on-line, no matter what.I hosted my own content long before Facebook was even a sexist rating site for stolen pictures of pretty girls. I will host it long after Facebook is history and mostly forgotten :)The internet is only closed for those who choose convenience before freedom.
amatus 16 hours ago 1 reply      
I'm working on GNUnet[1]. It needs a lot of help.

[1] https://gnunet.org

daveid 15 hours ago 0 replies      
Mastodon is a federated, open-source social network based on open web protocols


NotUsingLinux 3 hours ago 0 replies      
Most comments here are quite pessimistic.

Matrix.org is a start.

On a much much broader scale the Web 3.0 will be build on Blockchains, the so called Fat protocols will surpass the Web 2.0 or eventually merge.


Ethereum will build up a considerable part of the ecosystem, with Dapps like status.im


a1exyz 12 hours ago 1 reply      
I believe that the internet is powerful because it connects us to people rather than content. My dream is for our portal into the internet (currently google or Facebook) to become a search engine for people. I am interested in x. This person is the top authority on x. Here is a chat window. You can ask it questions that his/her bot will answer at first (to save this person from being spammed). However, eventually if you ask the right person, he/she will be interested enough to join in the conversation.

What am I doing about this? Nothing yet, but I have been thinking about this recently.

doublerebel 14 hours ago 2 replies      
I'm working on a project to separate data from presentation. Too much data is overly wrapped with presentation (e.g. HTML) so we are forced into using a certain display method (popular commercial web browser).

A related problem is that human readable data is often unnecessarily encoded into binary machine data. If we weren't wasting so much space on presentation, we could have just served the human-readable data.

In this future I think it will be considered ridiculous that you had to load an entire webpage full of unrelated images and icons just to read an article or weather report.

This concept will be huge for AR. In AR extra unnecessary information and uncontrollable presentation is beyond annoying, it actually makes users angry and uncomfortable.

Look out for Optik.io .

VvR-Ox 4 hours ago 0 replies      
Thank you for starting this interesting debate.

I have a slice of hope still that we (the whole community, dev's just like users who need to use services) can "make the world a better place".

The proble I currently see is that:1. We are too few ATM2. Facebook, Google, Apple,... already nested into the minds of many people, even the one's who claim to "think different"3. There has to be something:- big- useful- attractive- free of costs

to use instead of their sh*tty services and you somehow need to convince "Jenna to take here FB profile and also their friends with her to the new place in town".

The same goes for other services like WhatsApp, searching with G., buying on A. etc.

How will we be strong enough (against companies with billions of $$ and the brightest minds in tech cause they wanna earn 120k/yr) to put something up that can not only withstand them but convince all the zombies?

How will you get those zombies moving? The most of the ppl. not even reads news anymore and if they do they just believe what they see & hear. There is no discussion, if someone is pissed she/he is right. There is no science for someone who doesn't even know the value of a scientific method. We are royally screwed and there has to be A BIG UNITING OF ALL ACTIVISTS under one flag.

If we go on like this with every hackin' Joe trying to construct his own facebook clone then we will just die like the rest.

tunesmith 12 hours ago 0 replies      
I think the general incentive we've been seeing is the incentive towards faster and thoughtless opinion-sharing. Reactive (in the bad way) behavior is incentivized, and thoughtful behavior is discouraged, because by then people have moved on to the next thing.

So I'd generally like to see more effort put into making it easier for people to engage in more thoughtful ways.

This can also be applied to advertising. I'm trying to avoid chips, but if they're in front of me I'll eat a handful. So then the internet thinks, "This guy wants more chips!" So if advertising were more about my long-term values rather than my short-term behavior, then it'd be more valuable.

Anyway, it's pretty hard on social media to share deeper analysis and arguments and thoughts. I get that medium was sort of an effort in this direction, counter to twitter, but that's really just blogging with some extra algorithms thrown in. Need something else.

macawfish 8 hours ago 1 reply      
We need local bookmarking and indexing tools that can become primary to search. You have no idea how many times I end up searching the same thing over and over again. I'm using the search engine as a bookmarking tool. If there were more streamlined, humane, well designed local bookmarking tools, that wouldn't be an issue.

As a matter of fact, the fact that the browser by default sends everything I type into that bar up to some 3rd party, whether I've pressed enter or not, is pretty scandalous. It's not necessary.

I want local copies of pages that are important to me, for offline viewing, and I want to be able to bookmark specific parts of them in annotated, searchable, useful ways. I want to be able to share these. I want to be able to upvote and downvote their relevance as I use them again and again. I want human readable formats for storing these things. I want them on my filesystem, but not in a bunch of jumbled, strangely named files hidden deep somewhere on the computer. And I want to be able to share them peer to peer.

Remember the good old days, when people had WWW hyperlink indices? It's 2017 and centralized search/social platforms have all but destroyed the artform of digital curation. It is an artform that deep learning will clumsily fumble again and again. This website is a perfect example of how powerful human curation can be. The articles are curated and annotated collectively by human beings. The protocols and the web standards are more or less masterfully designed. We have unlimited programming languages.

I want to subscribe to notable peoples public web-bibliographies. I want them available in formats that are interoperable with my web browsers bookmarking and annotation tools.

realcr 2 hours ago 0 replies      
I'm working on freedomlayer.org.It is a research project for finding out solutions to various questions:

- Distributed and secure routing, specifically in mesh networks.

- Creation of scalable economy of digital goods (Storage, computation power and networking) between computers.

I believe that these will provide a foundation to build things like distributed email.

Currently freedomlayer contains mostly research documents, though I plan to implement some of it in the near future.

amelius 1 hour ago 0 replies      
In my view, algorithms that deal with user data (our social data) should be designed by universities and perhaps government agencies, like in the old days of the internet.

The role that big companies can play (we still need them) is supply hardware, and perhaps subordinate software libraries, also like in the old days.

turblety 16 hours ago 4 replies      
The UK government is working on it's own Internet [1]. It's going to really take off and be the next big thing!! No encryption too, so it's nice and safe from all those terrorists. Can't wait!!

[1] http://www.independent.co.uk/life-style/gadgets-and-tech/new...

lalalander 4 hours ago 1 reply      
I am of the opinion that Facebook and Google will continue to be relevant simply because of the perceived value in working for these companies. There was a recent top news on HN about a programmer who self-learned and applied to Google. The line "Feeling more confident, he set his sights high. He began to wonder if he might be able to work at Google" made me realise that as long as people look up to Google as a pinnacle of software engineering (or if pinnacle is too much of a hyperbole, at least I admit that Google has high software engineering standards), there will always be an influx of good engineering talent to these companies. I feel that one way to combat their grip on the Internet would be to change the mindsets of these programmers, and to change the narrative that all good engineers should work at Google et all. Without a constant stream of programmers willing to work for these companies, the quality of their offerings should decrease, hopefully to a point where the average Joe would start to look for alternatives.
amelius 2 hours ago 0 replies      
I think the developer community should distance itself more from big companies that act badly.

One way to do this could be for open source authors to introduce a section in the README file expressing the wish that the software will not be used in ways the user is not aware of, such as user-tracking.

nolanl 10 hours ago 0 replies      
I contribute to Mastodon, an open-source federated social network based on the OStatus set of W3C standards. Most of my work has been on making the web frontend faster, trying to add the kind of fit-and-finish that proprietary apps like Twitter and Facebook have.
spenrose 12 hours ago 0 replies      
I argue that "the Internet" has become a category error:


There is just civilization, which the Internet used to be meaningfully separate from but is no longer.

dmschulman 15 hours ago 0 replies      
Would any solution be tangible for the type of user who is attracted to Favebook? That is, would there be any solution which a non-technical user would flock to? Would it meet their needs and abilities in a meaningful way?
unityByFreedom 10 hours ago 0 replies      
Is this some sort of attempt to claim Facebook and Google are somehow worse than Ajit Pai's FCC?

I'm specifically objecting to the phrase "closed internet". It sounds like the opposite of net neutrality, but in reality, any privacy options within Facebook and Google have been user-driven.

The focus should be on removing Pai. Regarding Facebook and Google, you can simply choose to not use them if you wish.

You only have one choice for broadband, and Pai wants to extend ISPs' monopolies. Let's not let that happen without a fight.

thejohnhenry 9 hours ago 0 replies      
One harsh truth that must be swallowed before we (the Hacker News community) makes progress on this problem:

We live in the land of Startups. All good technology innovation we're used to over the last 20 years has come from the Startup/VC world, when the internet was fresh and nobody knew what would work. Over the coming decades, we'll need vehicles for technology innovation that go beyond the "take over the world & prayer" model, assuming that silicon valley's vehicle of ultragrowth monoliths will eventually align with civic values. They won't.

To illustrate this, let's say you want to improve some problem with Facebook/Google/etc. To even begin, you need $50 million and a minimum of 3-5 years building a userbase. By then, you have payroll, growth obligations, & investor pressure & are forced to monetize, usually in a way that compromises longer-term values.

We can solve this with smarter internet infrastructure. If you could share social graphs between applications, for instance, you eliminate an incredible amount of overhead in developing and experimenting with new social applications. There's a number of great initiatives trying versions of this (IPFS, Urbit, Blockstack -- I'm tracking a number of popular ones over at http://decentralize.tech).

The community needs more organization and more funding around these problems, especially in the field of developing new business models that work for software that don't involve selling out user priorities to global ad networks. I'm in San Francisco and working on this problem full-time if anyone wants to meet up and discuss solutions; Email's in profile.

SeaDude 13 hours ago 1 reply      
Have you ever warwalked or wardrove your neighborhood? What is the # of AP's / mile? Think of all that NAT not being used.

Where are the specs for the Outernet Protocol: a NAT to NAT DNS system that doesnt rely on gatekeepers/ISP access. Use the 198.162.xxx.xxx addresses on all of our existing routers for neighborhood scale networking. Build trust by proximity by allowing only known neighbors to connect. Could be very interesting. Especially when Joe mirrors Wikipedia and Samantha mirrors Archive.org and Jan has a realtime mirror of some good Reddit feeds.

Automate the mirroring the internet. Scrape every last bit, in real time, without the ads and crap. Make it available to those trusted folks in your proximity.

a_imho 1 hour ago 0 replies      
Install a content blocker in disagreement?
lallysingh 15 hours ago 2 replies      
Should we add github to that list?
jewbacca 13 hours ago 1 reply      
At least Google and Twitter have data takeout.

I recently discovered that, on Reddit, anything beyond your more recent 1000 posts/comments/upvotes is totally irrecoverable to you, even via scraping.

shea256 14 hours ago 0 replies      
In my view a big way to fix these problems is to allow for multiple clients to compete on the same underlying social network protocols. Semi-decentralized (federated) social networks like Mastodon have done great work here. Even better would be completely decentralized equivalents of Twitter, Facebook, etc. There are several impressive projects working on enabling these decentralized apps. One such project is IPFS. Another is one I'm working on called Blockstack.
Kiro 5 hours ago 1 reply      
You're hosting your stuff on Github so you are part of the problem. Fix that before you start talking.
jeeshan 12 hours ago 0 replies      
To foresee the perils of a closed internet, look at healthcare.

Instead of using open standards, most of our medical data is trapped in proprietary vendor systems that are at best antiquated.

Patients are unable to move their data easily, doctors and hospitals have to pay huge sums to access their own data. The vendors extract massive rents but were all left in the dark and our health suffers

mundo 15 hours ago 4 replies      
Here's a thought I've been turning over for a little while now.

It occurs to me that all extant social media apps have, at a high level, exactly the same requirements:

1. Allow users to upload some data to cloud storage2. Make that data discoverable to certain other users3. Show everyone ads

Whether FB, Twitter, etc were to be dislodged by another app that is essentially the same app is not terribly interesting. So let's look at which of these reqs are amenable to change:

a. "ads" - No one actually wants them, so get rid of themb. "Cloud storage" - Lots of people would rather own their data, so switch this to "the user's own server."

That sounds pretty compelling. I don't hate FB, but I'd sure rather switch to something that allows me to own my own data, and share pics of the kids with Nana without having to run them through Facegoog's billion-dollar snooping engine. However, there are two big hurdles:

i. Most people don't have a server on which to host itii. Most people won't pay for it, so someone would have to write it and make it really easy to use, for free

...and by a lucky cooincidence, both of those objections have the same answer: Amazon. Most people don't have a server? Amazon will rent you one. Who would develop a self-hosted FB clone for free? Amazon, to get people to rent servers.

Just a thought...

pascalxus 16 hours ago 1 reply      
Walled Gardens - Do consumers really feel that it's a big enough problem? As for filter bubbles, a consumer need only visit another news site, right?

I hope I'm wrong about this.

zitterbewegung 8 hours ago 0 replies      
I'm working on a manifesto and a set of blog posts to influence people that use closed internet services to think differently about it. What I believe we need to do to fight this is to make people care about who we give our data to and have organizations share their machine learning models so that we can have a more secure and open web. One of the ways we can do this is to allow people to execute machine learning models so that everyone can restrict it to the data that they own
perfunctory 5 hours ago 0 replies      
I ignore facebook entirely, use duckduckgo for search, and pay for journalism.
daraosn 9 hours ago 1 reply      
Brendan Eich, the inventor of Javascript and co-founder of Mozilla, launched this recently:https://www.basicattentiontoken.org/index.html

It's a token for advertisement that rewards the user, to be used at Brave browser:https://brave.comhttps://github.com/brave

bounded 15 hours ago 6 replies      
What would it take for a new social network to take users off facebook in 2017?
Ask HN: Where do you host your API endpoint?
39 points by david90  3 hours ago   43 comments top 23
trevordixon 10 minutes ago 0 replies      
I've been impressed with Google Apps Script (https://script.google.com) for little things. Define a doGet (or doPost) function, and it will be called for HTTP requests.

https://developers.google.com/apps-script/guides/content has a tiny example where they fetch an RSS feed, transform it, and serve the result.

You also have very easy access to Google services, so you can read from and write to Google spreadsheets, Drive, Gmail, etc.

Svenstaro 1 hour ago 1 reply      
Bare metal on a server at Hetzner. I like keeping things simple.
hacksonx 9 minutes ago 0 replies      
I have a few services running on Heroku. Not a favourite amongst many but I've been using it for a while and it works well for me.
kennu 1 hour ago 0 replies      
Amazon API Gateway + Lambda, managed by Serverless Framework. Practically free to use for small purposes.

For static content that can be (re)published as needed, I'd use S3 + CloudFront and a scheduled or triggered Lambda that handles the publishing.

rocgf 1 hour ago 1 reply      
IBM Bluemix used to have a free tier for containers, which you could use to run tiny apps quite easily and cheaply, using the native Docker CLI. They've since moved to Kubernetes and still have a free tier, but not sure how that works.

I'd probably recommend a DigitalOcean VPS though. Cheap, very stable (had a couple VPS for a year with 100% uptime, as far as I know), stellar support and a lot of new functionality being added lately - block storage, firewall, load balancing. DO is one of the best services I've paid for.

Disclosure: I used to work at IBM about a year ago, in the container service team.

kaishiro 2 hours ago 2 replies      
We started with API Gateway + Lambda, but recently migrated to Google Cloud Functions. The overhead to spin up new funcs w/ endpoints is trivial, as is rolling in CORS and even some auth if you really want (we're using Firebase Auth). It was a big deal paradigm shift for us. Whether that's because it's a fun product or because I'm just awful at AWS is, well...
gmac 30 minutes ago 0 replies      
CloudFormation -> RDS + Elastic Beanstalk + Lambda.

Formerly Heroku, but now only for toy projects: their approach to pen testing and the insecurity of their Postgres setup count heavily against them, and they're expensive (I keep meaning to write a blog on these points ...)

MrSaints 45 minutes ago 0 replies      
We use a combination of Lambda, ECS (for slightly larger services), and Heroku to host them. And, we use Mashape's Kong in front of them for authentication / authorization, and logging (see https://blog.arachnys.com/how-we-solved-load-testing-scalabi...). We found it far easier to configure than API Gateway.
mrborgen 1 hour ago 0 replies      
StdLib seems like an awesome alternative in this space:


I've seen the founder setup some impressing services in a matter of minutes.

dr_win 2 hours ago 2 replies      
DigitalOcean VPS running docker containers (for $10/mo).
kiechu 2 hours ago 0 replies      
Heroku. That https://github.com/Miserlou/django-zappa looks awesome, but I didn't try it out yet.
asadlionpk 1 hour ago 0 replies      
Kubernetes on Azure and GKE for main projects (high traffic)

If your projects are lightweight / low traffic, check out Flynn. You get to push code directly to flynn and skip the docker workflow (push commit to github -> docker builds image -> kubernetes updates pods, this takes time ofcourse). Flynn can also create DB for you.

Or you can just use firebase.

JCharante 58 minutes ago 0 replies      
Docker containers running on hyper.sh

I love their docker-like CLI.

pdelgallego 1 hour ago 0 replies      
AWS ECS less powerful than k8s, but easier to configure for high availability, multi AZ/region, etc.
futhey 3 hours ago 1 reply      
I'm using now.sh, really nice for a node/express based API endpoint. Ours seems to scale very cheaply and deployments are, dare I say, fun :)
olalonde 2 hours ago 2 replies      
Kubernetes :) Heroku's free tier seems to be a popular choice for side projects.
Radeo 2 hours ago 1 reply      
http://pythonanywhere.com/ is also a good alternative.
Jakob 2 hours ago 1 reply      
It doesnt seem then that your response is dynamic? You could generate a static file every now an then and host it wherever you want, no?
makach 2 hours ago 1 reply      
We use Apigee, now know as Google Sense (API Management framework)

Most big cloud vendors offer API management through their services.

deforciant 1 hour ago 0 replies      
3 f1.micro nodes k8s on GKE for hobby side projects:)
anujdeshpande 2 hours ago 1 reply      
API Gateway and AWS Lambda do it for me.
Mayeul 2 hours ago 2 replies      
Old-fashioned answer: docker on a dedicated server at OVH or VPS
sprt 1 hour ago 0 replies      
App Engine
Ask HN: How to not bring emotion from work back home?
250 points by steve371  1 day ago   213 comments top 122
cientifico 1 day ago 6 replies      
Workout, meditation, distraction, talking with people didn't work for me. They were ways to silent the emotions and postpone the problem.

What worked for me was a lot of self reflexion. Understanding way I was angry in the first place.

I found out that happiness is just the way of approaching things. That the world is just a projection on your head. An interpretation of the five senses + state (learned experience mostly).

Changing the input, just mades you an slave of the environment.Changing the state, gives you back control over your feelings.

If you reflect about why the feelings appear in your mind that generates stress, anger, you can start accepting them, welcoming them, until the point you no longer get anger, or stress...

For me, it become a routine. A) a way to trigger the self reflexion, or consciousness while stress happens B) find the reason for the feelings.

Example: People don't understand what I say, and then do other things. It bring up fear, rejection, mostly coming from childhood. Ok. I converted an unknown unknown into a know unknown. I excuse my self and decide if better communication skills is a task that I am willing to commit learning, on that case I do, or I just acknowledge that I often going to have mistakes and laugh about it.

Time over time, I was able to have happier live. Even enjoying the sadness that sometimes generates things not going the way I wanted at work.

nyxtom 1 day ago 4 replies      
I know some people here have suggested jumping to another position, which certainly is a viable option, but consider the fact that emotional hardship will always occur in our lifetimes. Similarly, it's worth gaining some self-awareness around why things are activating, whether they be good or bad (activating or deregulating your system in a heightened state or a low-energy state).

My advice is see a therapist on a somewhat regular basis; we are quick to ensure that we always keep our bodies in check and healthy but rarely do we consider that perhaps mental therapy is also something we should do regularly. You've said it yourself, talking to people helps; my suggestion is see a therapist, it is their job to help you gain introspection and be your guide; and in general give you a safe space to express how you really feel and what's activating it (good or bad, ups and downs). It's helpful to have multiple people that you can lean on for this thing, a therapist might help guide you towards creating a community of people that you rely on.

humanrebar 23 hours ago 5 replies      
My personal answer is that I'm a Christian and the teachings of the Bible directly address these issues.

Some of it involves a different worldview. Changing the world becomes both less important and more possible. It becomes easier to prioritize important things in life like caring for loved ones or for others who need help. The conflict of the day, whether political, personal, or work related, doesn't endanger the purpose of my life. The worth of my life is no longer defined by "success", power, happiness, or winning.

All this ties back, of course, to the Christ of the bible and His teachings. Ecclesiastes is also a powerful book when I'm feeling cynical. I honestly feel both Christ and Ecclesiastes are at time cynical and curmudgeonly; the positive examples are helpful to me. Reading and praying (about the reading, about life) probably serve the same purposes as the meditation techniques espoused in this thread, but it is more than just body hacking.

> Talk to people helps. But one person can only bear with you for so much. Even though it is a good friend/love you very much.

Talking to my church family and to a much greater extent God doesn't have the same issue. A healthy church family is a bigger group, all of whom are dedicated to your health in every way. And God has more than enough attention and patience for me.

In general people don't appreciate talk about religion, but people are advocating cycling, meditation, yoga, and major career changes. I hope a suggestion to read a bit of the Bible, say a few prayers, and trying something new Sunday morning isn't far off base.

For what it's worth, I've prayed for you Steve, that you can find emotional health and success in your life.

tomashertus 1 day ago 3 replies      
The thread is full of great answers and advices, but I haven't came across this one:

I was dealing with similar situation like you. I had a hard time to find peace after work at home. I was looking for advices around and once came across an article(I can't find the article) which recommended that you should not stop doing activities which you liked as a child when you are an adult.

When I was thinking about it, that was exactly what I did. I stopped doing things which I enjoyed when I was a kid. I used to play a lot of Age of Empires and loved that and did competitive swimming. So I started with the swimming and it helped me both mentally and physically. After a year or so, I started slipping back to the same routine as before and not even the swimming was helping. I tried to do some research on the Age of Empires thing and installed it to my laptop after 10 years or so. Since then the strategy for me in critical situations is:

1st - Go swimming/biking/running, try to sweat it out.2nd - If 1. does not work(happens like once in couple of months). Play some freaking Age of Empires for 6+ hours straight3rd - If 1. and 2. fail, talk with people

Firstly, this sounded really silly to me and I think once I have kinds this won't even be an option, but in my current situation this small hack works pretty well for me.

dizzystar 1 day ago 2 replies      
If you have a terrible job, no amount of therapy, exercising, and drinking will help you here.

You need to find a new job, plain and simple.

If it's your 10th job and you are feeling like this still, you have to figure out if it is bad luck (it does happen) or if it's something with you. Either way, it is sort of you, since you managed to keep finding and stepping into jobs you are unhappy at. Certainly, a hint or two during the interviewing stage was overlooked.

pc86 22 hours ago 1 reply      
Well by definition it's harder to come back from that edge. The whole point of regular exercise, meditation, and reflection is to not get there in the first place.

Stop trying to fix the symptoms, fix the cause. Why does work of all things make you this angry? Is it a lack of control? Would you be happier running things or doing consulting? Is it the project(s)? People/a particular person?

Stop trying to get rid of the cough and start trying to get rid of the illness. It is not normal to get so angry at work that you bring it home.

naikrovek 1 day ago 3 replies      
If covered by insurance, speak to a therapist weekly.Unless you are in one of a handful of professions, your work is nothing that warrants this amount of stress. No one is going to die.

There's tons of things that happen at an employer that are wrong, and that are stupid and that are complete nonsense.

There are things that you must simply let slide. Things that truly do not matter. Very few things REALLY matter. Very few things, and none of those things are the day-to-day work life.

Speak to a therapist regularly for a few years. One that specializes in trauma survivors.

falsedan 1 day ago 1 reply      
Always be working

Melt down at work in a spectacular fashion

Engage in a campaign of passive-aggresive attacks on the team causing your anger, explain it as an attempt to use negative feedback to get their working habits to change

Never admit your mistakes; make sure any mistakes you make regarding those teams' responsibilities are swiftly swept under the rug

Conflate your productivity with the company's: anything that slows you down is bad for all devs & the business's bottom line

grandalf 1 day ago 1 reply      
I suggest doing something between work and home that you enjoy and that can fully distract you from work. Some hobbies are like this... an hour doing it and you will pretty much forget your work "self". Don't feel the need for it to be productive or purposeful.

I think much of the bad stress we get in jobs comes from our deeper understanding that the work is pretty pointless or simply unimportant to us. The idea of that (pointless) thing being who we are for most of our waking life is maddening.

Also, few of us are in high status positions at work (simply because of the typical hierarchical structure) even if the job or company is prestigious. Being in a low status role creates significant fatigue, stress, and anxiety, and is often the hardest to shake off at the end of the day when we are around true equals such as friends or loved ones.

So the best thing to do is to find work that feels more like play. But if you can't manage to do that, at least force yourself to play a bit after work to take the edge off. I recommend against making it about food or drink, since indulging provides a psychological salve that mutes the stress but does not truly evict it from your consciousness the way play does.

Mz 1 day ago 3 replies      
I have known a number of people, including my ex, who needed some time to successfully make the transition without bringing baggage home. When my ex was having a bad day at work, he would come home and spend about an hour on his computer before he could talk with me without it going weird places. I have had conversations with people who talked about "Yeah, this is the real reason I stop at my favorite pub on the way home. Not for the beer per se, but so I have some time to myself between work and home."

You might also try working on this nutritionally. I have recently had good results with upping my consumption of vitamin C to get excess anger under control.

laurent123456 1 day ago 0 replies      
You might want to look at what, specifically, makes you angry. In my case, my work doesn't affect me outside of work because I put clear boundaries. If I'm supposed to be in the office from 9am to 6pm, I'll be there, but at 6pm I leave, whether there's something important going on or not. Doing that systematically means that people don't expect you to be around and won't come with more work at 5:55pm. At home, I don't check my work emails and don't take work-related calls (there's a few exceptions, and it's usually agreed in advance with the company so that it doesn't become a habit).

All this helps me "recover" from a day of work and to feel good at home, knowing that I won't be suddenly interrupted for work reasons.

Again, it might depend on your specific case. If a work was making me angry I would simply quit, but maybe it's not an option for you.

hluska 1 day ago 1 reply      
Hey bud, you aren't alone and, while I can't promise that everything will be roses, I can promise that you aren't alone.

However, I need to ask you a very serious question. You don't have to answer in public because it is a very personal thing. But, what do you mean by moments when you want to snap? And, when you say 'the edge point', what are you on the edge of?

If it's anger, have you ever thought of anger management therapy?

Or, if you are thinking of hurting yourself, please don't.

If you need someone to talk to, my email address is in my profile. I doubt that I know you in person and I am open to listening to anything you need to say.

Be safe and peaceful.

En_gr_Student 23 hours ago 1 reply      
Truth is powerful. It is stronger than willpower.

Anger is not a primary emotion. It is a secondary emotion. It cannot exist without thought. This is fact.

Anger is a response to unmet expectations. You expect and feel you deserve some "state of the universe" whether it is success, recognition, remuneration, respect, or basic human treatment. You then do not receive that thing you expected and believed you deserved, had a right to, earned, or very much wanted. That mismatch is where anger comes from.

The first way to stop anger, is to stop it from growing. If you know where it comes from, then you can change your circumstances or your expectations. Your body is presumed to have overcome an invasive bacteria when it can stop the invader from net growth. The same thing works for anger.

Anger cannot remain unless you replenish it. If you do not feed it, it does not grow. Do not review the thing that "made you angry" over and over. There is an brain hijack where you get a short-term emotional high, and find it harder and harder to resist replenishing the anger. You can't tell yourself "don't think of pink elephant". Instead you can say think very hard of "a". Read "how to live on 24 hours a day" for a good guide on focus mind on single topic.

If you don't like living in a world that makes you angry, try to make it a world that does not make others angry. If even a small majority has this as their process, then you get to live in a world where others help you to be less angry, less unfulfilled, less disappointed. You might find that fulfilling.

After you have the mental and emotional roots resolved, then you can look elsewhere.

Also, stay away from prescribed hormones. They hack the wetware. They make your biology fight your mind, instead of being its servant.

Best of luck.


johngalt 1 day ago 2 replies      
The best way to not bring all that emotion home is not to have it in the first place.

Anger is caused by frustration is caused by desire.

People who dont give a damn about their jobs clock out at 4:56 and rest easy. The people who burn out or 'snap' are the ones whom take the most pride in their work. Learn to care less about your job.

If you already have the emotions built up, then simply recognize that fact and take them apart. Writing letters you dont send works pretty well.

dazh 1 day ago 0 replies      
I feel that this is trying to treat the symptom rather than the cause. It's definitely not normal to come home feeling like you want to snap. Whether it's your work environment, or your personal circumstances, I don't know, but I think looking into changing one of those would be the more effective choice here.
theonemind 1 day ago 0 replies      
At the edge point, I find it helpful to lie down and not react to any thought, sensation, or feeling until I feel stable. On rare occasions, I feel like I'd want to punch someone in the face just for speaking a word, and when I lie down, I feel the dire need to react to something. I put on a sleep mask, put in ear plugs, put noise cancelling headphones on top of that, and then play a decent volume of white (brown) noise in them, and very carefully do not move, think, or react... and if I do, i'll just go back to not thinking, not reacting to thoughts, not reacting to the repeating jerking urge to get up and do something, and I'll usually fall asleep for a bit. Generally, I've never found this to fail to clear almost any negative state I'm in.

It's just a psychological agitation. Even normal friction, etc. can agitate a physically sore spot, and you should just let up off it to let the agitation subside. Same idea, works great for me.

I actually pretty much do that every day after work to some extent or another, but I'm only really serious about not reacting to anything when I really have some anger/agitation/whatever that needs to dissipate.

twobyfour 1 day ago 0 replies      
When I'm really angry, just a workout won't do the trick. I have to work out to the point of sheer exhaustion to release all that negative energy.

Having an enjoyable commute helps me a lot. A long walk or pleasant bus ride (with optional music) is time to process emotions and to create a mental break between work and home.

Meditation can also help -- not as a solution at the moment when you're angry, but as a habit that can improve your mindfulness and ability to deal with your own emotions.

My last resort is distraction - reading a book or watching a movie or TV show I know will be engrossing. An hour or two later, the frustration has usually dissipated.

That said, if you're experiencing rage that you can't control, or are on the edge of "snapping" - whether into rage or depression or whatever - I agree with the previous poster who suggested you seek mental health services.

A good therapist can help you come up with better outlets and coping mechanisms, or help you identify what in your life you need to change to avoid circumstances that trigger such frustration. It may take a few tries to find someone who works well with you, so don't get discouraged if the first person you try isn't a good fit.

cbanek 1 day ago 0 replies      
Are you angry for a reason or just generally frustrated? (dissatisfaction with work, coworkers, etc.)

If you wrote it all down, do you think it would make logical sense?

Sometimes I'm just over emotional. Sometimes the place I'm working isn't a good fit. If it's not a good fit, I also find that my emotions get out of control as well.

If things are building, figure out what is building them and try to change that. Little things can make someone crazy for a few days, but if it's every day, it might be depression or burnout. If your stress never goes away and just keeps building on itself, it's likely depression or burnout.

Talking to a professional might help, very least it feels like you are taking action to make it better. They might be able to help you frame and understand what is bothering you.

p0d 1 day ago 1 reply      
I built a shed in my garden. I sit in it and listen to classical music for about 45 minutes when I am stressed after work. My family and I both benefit.
wdewind 1 day ago 0 replies      
> Meditation/music can only help when you are not at the edge point.

I don't think music will be particularly helpful, but meditation, specifically mindfulness meditation, will be most effective when you are at the edge. Try practicing for 10 minutes a day, and then when you are on the edge try your best to really feel the stress and experience it. Your goal is to build your tolerance to it, which you can only do by not running from it. It's just like working out: you need to practice and you'll get stronger. The 10 minutes a day of practice when you're not on the edge will help you build up to being able to be truly present when you are on the edge.

manibatra 1 day ago 0 replies      
I was able to be a much happier person after I realised that it is just like any other skill. So for being happy you have to train your mind. I personally prefer stoicism and the book "Daily Stoic" will be a good start. A ready made plan to increase your mental resilience and in turn happiness :)
Morendil 1 day ago 0 replies      
It's normal to experience emotions related to what happens at work. It's called "being human". And dealing with emotions - putting words on them, accepting them and moving on - is a key skill and a part of growing up.

What varies, in my experience, is whether and how much it is acceptable to discuss (and thus process) these emotions in the workplace itself. Being able to say "I'm sad / angry / joyful about X" makes a world of difference.

Once I became aware of that I started being able to remedy it. To start with I actively sought and encouraged discussions of the emotional components of whatever work I was a part of. Retrospectives were a great way of having a structured framework for these discussions (as opposed to giving the impression that I wanted to psychoanalyze my colleagues or vice versa).

After a while I noticed, too, that management in some places actively preferred the dehumanizing effect of making emotions undiscussable, because it afforded easier control over people. I started avoiding these places and selecting jobs that accepted and expected me to behave as a human adult.

unique_ptr 1 day ago 0 replies      
I like to take the Wolf of Wall Street approach. Percocet at home. (adjust dosage to tolerance) I microdose 8mg of xanax at work sometimes. Weed on days off. Masturbating a minimum of 4 times a day.
danesparza 23 hours ago 0 replies      
I would encourage you to journal. It will help you to put language to your strong emotions and work out things that are troubling you. I wouldn't even worry about being coherent at first -- just try to get out all of the things you're feeling and why. It generally helps to do this in a quiet place.

Other folks have mentioned therapy / counseling -- which I highly recommend as well. I've gone to a marriage counselor with my wife for years and plan on doing it for the rest of my life (albeit only every 2-3 months now). You can take your notes to a therapist and make your sessions more productive.

Other folks have suggested switching jobs -- which might be a good idea. If you do have to switch jobs, you'll be able to make a more informed decision about what works (and doesn't work) for you in a work environment.

hiven 1 day ago 0 replies      
This may not be the right situation for you, but worth mentioning generally. I find getting changed when you come home helpfully because it helps reinforce the divide between work and home, and I find it easier to forget the worries of the day.
cyberjunkie 1 day ago 0 replies      
I see way too many people taking their jobs more seriously than they ought to. There's something very odd about people who sideline their families and close ones, because their daily work is more important. They're way too busy to speak, or meet or be nice even when they leave work.

I think unless you're in a field where lives are at stake, it's well warranted, and it's noble what you're doing. For the vast majority of us, it's a job. You have one, you don't. Most of us are smart enough to get a new one. You do your best, you do it at work, and keep it there. Note down things on a notebook, things that you can continue on the following morning.

Trying to be as honest, upfront, easy-going and helpful, the kind of person you are at home, also helps bridge things better. That way, you don't need to be a different person, and switch between them.

Generally, just take it easy, you're not out saving the world. Do your best and carry your bag home, not your baggage.

codedrop 1 day ago 0 replies      
I like the idea of the reptilian brain and the monkey brain. Not sure how true it is. All anger and similar emotions, I feel, reside in the monkey brain. And the best way I have found to shut it up for a good period of time is to jump straight into an ice bath. No mental preparation. Don't wait. Just jump straight in all the way. And stay longer than you'd like.


smoyer 1 day ago 0 replies      
I would argue that the best course of action (in general) is to not use your emotions at work. Software development as an engineering discipline is best done in a dispassionate state. I can logically defend the decisions that I've made (and learned from the wrong ones).

Since you've been working for many years, practice this exercise when you start feeling angry - think of a time in the past where you were also angry and think of the outcome of that episode. You'll find that the emotion really doesn't help the situation and have to assume that it won't help the current situation either.

I'm not saying that you should be a Borg at work - it's good to feel emotions. But you're going overboard and eventually it will harm you (or already has).

mrweasel 1 day ago 0 replies      
I'm rarely emotional after work, but it does happen that I've had a bad day or a customer is being annoying.

My wife have annoying co-workers and customers that piss her off too sometimes. So when we get home we ask each other how the day has been. It usually takes 30 - 45 min to cover everything while we're cooking dinner. We aren't trying to solve problems for each other, unless asked to, we just listen.

It really helps to be allow to be vocal about the emotions of work, and it helps the other person to understand where any anger is coming from and where it's directed. If we didn't talk about our day, my wife could easily assume that I'm mad at her and vice versa.

At a point where I was having a rather bad period at work, my wife insisted that I listed three good things that happened at work that day, that remove the focus from the negative things.

stevenkovar 22 hours ago 0 replies      
Sleep, diet, and exercise. There's a good chance you need to improve in one of these areaswe all do.

Otherwise, think of stress like your email inbox; a stressbox. You can zero this out on a daily basis by being honest with yourself about what is important in your life.

If it's not important, delete it.

If it is important, archive it and come back tomorrow, wait for your brain to detach the emotion from the event. Anger is a symptom; you need clarity to figure out the cause of the symptom (the event).

If it's someone else's anger causing you stress, mark it as spam and unsubscribe; sometimes this requires telling someone to stop being negative around you.

nickhalfasleep 1 day ago 0 replies      
I write my tomorrow self a todo email at the end of a long day with items to pick up on tomorrow morning. I let that guy deal with it.
songshu 1 day ago 0 replies      
1) Reduce your physical vulnerability (diet, sleep, exercise)2) Act on emotions if they are justified and you can do so effectively3) Behave the opposite way if they are not, with sincerity4) Identify soothing activities you can take refuge in5) Build a life worth living, regular activities to focus on6) Find a good therapist7) Accept yourself
sailfast 21 hours ago 0 replies      
There are a lot of great deep, reflective answers in here. My advice is more tactical so take that for what it's worth.

1) Make sure there's a buffer before you get home from work, or if you work from home, create a buffer. During that time (could be as short as a half hour), do something that's not super stressful and not related to work that gets you thinking about stuff you're interested in. For awhile this was listening to audio books on the train ride home or doing crossword puzzles - as long as it decompresses you a bit.

2) Make sure you're sleeping enough. Fuses get short when you don't sleep and this fixes a lot of things.

3) If you're not working out or moving around, find something that you can do. If it's competitive maybe that helps. Squash, tennis, soccer league? Something that makes you run like crazy and gets your heart rate up.

4) Start work on that thing that's screaming at you from the inside because you're not doing whatever "it" is. Maybe something there - an idea, a project, a thing. What's been keeping you from working on it? Maybe life or your job seems to be preventing you from doing it? Start small. Talk to a few people and keep the fire burning. Learn more about it so you can start to think more strategically about approaches (or rule it out)

smnscu 1 day ago 0 replies      
Can I just point out that if you're constantly irritable and grumpy you might want to get checked. In my case I've had weeks in a row where every little thing would make me flip, and it's apparently due to my shitty thyroid.
robotkdick 20 hours ago 0 replies      
I think the challenge you are facing can be resolved, but only through accepting the risks of social awkwardness.

The fact that you are reaching out to people is good. Don't stop. Find the people willing to listen and keep talking until you figure it out. Some people can't handle it and they will naturally peel away. Don't panic when this happens and don't blame yourself (or them) for having a real issue that you need to work out.

Keep reaching out to people, not chatbots. Soon enough, you will have sorted out your true friends (and you will also make new friends). The work you need to do lies in finding out who you are through the eyes of other people.

One more thing, don't do this on the internet. Go meet people in person.

Finally, we all need human touch. If you are not getting that, you will be angry because it is a need we all share. When you get touch, chemicals are released in your brain and you feel better. If you can't get this through other means, book a legal massage once a week. Thai massages are good if you are experiencing anger. I hope this helps!

lnanek2 19 hours ago 0 replies      
I found this book to be quite good:

> The Irritability Cure: How To Stop Being Angry, Anxious and Frustrated All The Time


It does a good job covering various reasons you might be upset, e.g.:


1. Someone did something they shouldnt have done.

2. Someone was hurt, harmed, humiliated, embarrassed, offended, disappointed, or otherwise inconvenienced by what was done.

3. Some person or persons (other than myself) were unilaterally responsible (i.e. to blame) for #1 and #2.

4. The offending person or persons should acknowledge what they did wrong, offer to make amends, and/or be punished.


Then various things you can try to think about to short circuit being upset:


A) Failing to recognize how your own judgments, evaluations, and standards might not be valid for other people.

B) Failing to recognize how your own actions, past and present, may have contributed to what happened.

C) Justifying your anger, instead of looking within yourself for its internal causes.

D) Retaliating or seeking revenge, instead of openly and honestly dealing with what happened.


I know lots of advice in this realm ends up being things like stop and breath, exercise, use religion and forgiveness, but none of those things really do anything for me. If you can make a chain of logic to the bad result of being upset and then break the chain somewhere with one of those, I find that quite effective.

cjstewart88 1 day ago 0 replies      
My wife listens to me bitch and complain anytime I need someone to talk to. One day she simply told me to keep things in perspective. Think about all the things we have to be thankful for and question is it really worth it to get worked up over whatever it is that's bothering you.
onetwotree 12 hours ago 0 replies      
People have been dealing with problems like this for thousands of years. The solution, developed in almost every culture, has been some form of spiritual practice.

I view spirituality as the technology of human existence, and take a pragmatic and heterodox approach. The key is practice and action - you don't get anything out of simple belief.

Steer clear of spiritual ideas that feed your ego, and gravitate toward ones that emphasize humility, service and acceptance. It works well for me, but as always YMMV.

Mz 17 hours ago 0 replies      
I will also add the thought that you might find it helpful to do volunteer work of a sort that really tugs at your heartstrings as a means to put your day job in perspective.

I paid accident claims for over five years and a lot of my coworkers found this to be disturbing work. But, among other things, I had been a military wife and raised two special needs kids. It was rare that I took any of the emotional stress home with me. I stressed about making quota every day, but most of the run of the mill accidents did not get a rise out of me. Once in a while, I would read something particularly gruesome and have trouble with that. But I think this was on the order of once a year or so.

abelhabel 20 hours ago 0 replies      
There are many ways, of course, but I'll tell you what I do.

If I am angry or upset in any way I first think about it. If I cannot understand the anger I let people know what I am feeling and that I might need to be alone or just need some silence.

If, then later, still aren't any wiser about what I am feeling I start analysing my emotions. For me it helps to read philosophy or art (movies, music books etc). It is a way of looking at things from a different perspective and this can help me reflect on what is going on.

However, I never have the intention of getting rid of my emotions. Rather, I have an interest in my existence and metaphysics in general. So whatever comes of it I am fine with.

So, my advice is to let people, including yourself, know that you are about to "snap" don't try to not feel whatever you feel. Not everything has to or can be resolved.

lr4444lr 1 day ago 1 reply      
How are you so sure that your problems at work really stem from work, instead of being symptomatic of a deeper personal problem you might externalizing onto work? Is the coat of looking for a new job really that high? If your problem keeps worsening, that may eventually be eclipsed by the need to maintain your mental health. If not, then why can't you resolve the problems of work at work?
hollander 1 day ago 0 replies      
I like to dance. It's active, it's fun. There are many different types of dance. Do you want to dance with a partner or not? Slow or active? Strict format or completely free?

Tango is rather slow, salsa is more active. Capoeira is more like a fighting dance. Street dance is similar. Show dance is top sport. Ballroom or latin dance styles like salsa have a strict format. There are so many different styles like Lindyhop, real fun, but I recommend that you start with the more popular ones.

If you don't like that, there are more expressionist type of dances, like biodanza or five rythms. These are more like workshops, guided by a teacher. It's not about doing the right moves, and anyone can join, even those with no rythm-feeling. And you can dance in your own place, curtains closed, music loud. Dance like nobody can see you, or dance when nobody can see you if you're too embarrassed.

Another tip is improv or theatersport. You can put a lot of agression and energy in it. In general it's great fun and it has helped me overcome several anxieties.

For me, when I dance or do improv, after five minutes I've forgotten all about the day.

ThrustVectoring 18 hours ago 0 replies      
Real talk: you need to figure out your priorities. Either your friends and family are a support system that helps you accomplish something meaningful and important in your career, or work is a thing you happen to do that pays the bills so you can have fulfilling personal relationships.

Neither choice is necessarily better. It's extraordinarily difficult to prioritize both - the entire point of a priority is to tell you what isn't important. I'm personally biased towards friends and family, but if you have an important mission to accomplish, go for it.

indigochill 1 day ago 0 replies      
For me, the key is to decouple my personal emotions from work. Now, I still get angry about mismanagement here and there, but I also set things up such that I can easily remove myself from the situation if things get to the table-flipping point.

The two main practical steps I'm taking right now are (YMMV):

1. Save/invest 50% (or as close to that as I can manage) of what I take home. This is about more than just living jobless for a month for every month I work. Barring catastrophic expenses, if I keep investing this money over ~14 years in a fund that averages 7% return a year, I will make around enough money to support my lifestyle passively, at which point a salary stops mattering and I can financially afford to leave any job, any time.

2. Build my resume with "extracurricular activities". In my case I'm earning an online master's degree on top of work (years of step 1 helps me afford this, and my program is relatively cheap). This makes it easier to find new, interesting work in advanced fields (and it's also just fun to constantly learn new things).

hkmurakami 1 day ago 0 replies      
I've struggled with this for years until I realized that I'm the same person at home and at work and actively sought to be this way.

This is in contrast to some peers who have a professional personality (which is still gemslwves, but with restricted access to core identity) and a at-home personality.

Separating the two and turning one on/off at will is the approach I am striving towards.

asupertramp 1 day ago 0 replies      
Self talk.

Nothing helps like talking to yourself. Build narratives and counter narratives and try to analyze the situation at hand. It's like taking a third person perspective for the sole reason of analyzing what happened, and why it happened.

Try to avoid getting into solutions mode. Don't even try to think about how you can improve or change the situation. Just understand and spend some time thinking about what exactly happened.

legohead 20 hours ago 0 replies      
What is causing you emotion at your workplace? Are you being treated unfairly?

My short answer would be to find a new job. I've never had a job that caused me so much stress it caused issues at home. Sure, there have been times when my boss did something to really piss me off and I got angry, but those are isolated incidents.

At one of my jobs I was promised something that never came (I should have gotten it in writing). I asked about it every year, until it bothered me so much I gave them an ultimatum. They refused, I quit and moved on, and am much happier in the end.

uptownfunk 1 day ago 0 replies      
Do you consume coffee or caffeinated beverages? Are you getting enough sleep? Consider eliminating coffee/coke/energy drinks/other caffeinated beverages from your diet. I've seen it work wonders for many people I know who were having work-related anger/stress/anxiety issues.
avs733 20 hours ago 0 replies      
Obviously this is what works for me so YMMV.

I like rock climbing as a workout. I specifically prefer that because it requires me to be 100% mentally engaged in it while climbing. It is a combination of meditative ways of thinking as well as physical exercise and blocks everything else out. Anger during climbing is utterly counterproductive. It doesn't de-escalate as much as it distracts and focuses.

And most importantly, it doesn't rely on transferring my frustration and anger to others...which is a bad habit of mine.

e40 21 hours ago 0 replies      
Here's what a mentor told me many years ago:

Look for the clenching of your emotional fist. It happens before you say or do anything, and if you can recognize that and decide to delay a response until after you have time to think about an appropriate response, then you will be much better off.

It takes practice. For me, the positive outcomes from waiting reinforced the waiting behavior. I just know if I wait, it will always be better and I can respond in a way that won't make the situation worse.

rocqua 21 hours ago 0 replies      
I think getting to emotional at work is its own problem. If you could just control your emotions after work, you could probably temper them enough during work to not have this be an issue.

For emotional health, it seems rather arbitrary to draw a line between 'at work' and 'at home'. The only real difference may be in what those environments consider acceptable, but you can't just switch between intensity levels. Emotion is, kind of by definition, not fully within your control.

billylo 11 hours ago 0 replies      
I sip a cup of tea and gently remind myself what's important in life.
delbel 1 day ago 0 replies      
if you are in a state that allows marjiuana consumption, and you do not have any history of substance abuse, a microdose of THC would probably change your mood. That or a cold shower, a quick run (runner's high), or something that physically alters your mindset quickly might do the trick.
sevilo 18 hours ago 0 replies      
hmm I think this varies a lot based on personality and your upbringing. But here are my $0.02,

try convincing yourself that you're not your code, you're not your work. You as a person is much more than just what you're paid to do. Perhaps consider going to the gym after work for 30-60 minutes, exercising helps improve your mood. I also think hobbies that are completely unrelated to your job helps keep your personal life separate from your work life. Personal belief the tech industry overall has a not-so-good culture where people expect your job to be your passion, and they expect you to be live and breath code outside of work. Try leaving that mentality behind, as long as you perform well at your job, as long as you have the desire to improve, it doesn't have to be your passion. I typically do calligraphy and music compositions after work, which are btw very meditative hobbies.

Hope that helps.

abramN 16 hours ago 0 replies      
hey, I deal with this too. Exercise does help with letting off some steam. What also does wonders is to list out the things that are bothering you, and then ask yourself - "is there anything I can (and should) do about this right now?" If the answer is yes, then do it. Otherwise, let it go for the evening, and the issue(s) will still be there in the morning. Remember too - your subconscious is a valuable tool, but you need to let go so it can do its thing! You ever have those eureka moments in the shower? You can have those same kinds of revelations in the morning regarding a problem that you thought was insurmountable the night before, but you have to stop thinking about it long enough to get the right perspective on things.
losteverything 21 hours ago 0 replies      
1. Stop watching tv and listening to any news.

2. Quit your job and work at a place(s) where you don't have to think. In fact where you are supposed to not think. Deliver things. Be a cashier. Rinse. Repeat.

Mike Rowe of dirty jobs said the happiest people he ever knew were those he featured on DJ.

Struggle financially. Earn your vacations and personal purchases. Make your time not idle like retired/unemployed do.

These eliminated my anger.

CodeWriter23 1 day ago 1 reply      
From my experience, when you're at the edge, the only thing to do is release the anger. Chopping wood, sledge hammer to rocks, in general doing he-man break shit. Preferably in private.

Once that's worked out, I make sure to give the anger back to the person who's sourcing it. If I need to check myself by asking the person questions, I try to do it. But other than that, I really try my best to reflect that negative energy back at its source. And while I prefer being overt, I will be covert when the situation indicates that is necessary.

Or as another guy expressed to me, you need something like the pressure relief valve on a pressure cooker to blow off the steam a little at a time, so you don't explode.

b0n40 1 day ago 0 replies      
My 5 cents... If you are reaching the edge point you dont know how to meditate.

I will recommend to read just few books for a start1. Dao - Lao Tzu2.The Willpower Instinct - Kelly McGonigal 3. The Art of War by Sun Tzu

you are not going to reach self-knowing or self-control using other people's thoughts. Everything good comes from the walked path, It takes time and practice.

And the way is not only to evolve from inside but from outside too, so "workout" daily is also important part.

snarfy 22 hours ago 0 replies      
You need to be more busy in your personal life. You should be so busy you do not have time to think about work when you are away from it. Instead of stressing about the work day on your drive home, you should be looking forward to the things in your personal life. The whole point of trading your time for money is so you can have a personal life.
maneesh 1 day ago 1 reply      
This is one of the most common use cases for users of our wearable device, Pavlok. Adding a zap when noticing negative emotion kicks you out of automatic limbic system mode, and into human awareness/prefrontal cortex mode.

Here are a couple users who spoke about it



brad0 1 day ago 0 replies      
Mate, you need to deal with your emotion. You should become more aware of your feelings and what's causing them.

On top of that ask yourself what problems do you have in your life that you aren't solving?

Being angry is a symptom of your worldview not reflecting reality. What situations are causing you to feel that anger?

Last but not least, go see a good therapist. They're paid to understand your problems and help you get better mentally.

sethwm 1 day ago 0 replies      
I would recommend exploring Emotional Brain Training (EBT) [1]. Wired for Joy [2] and Spiral Up [3] are two related books on the subject. Find a therapist that works in this space to coach you through it.

[1] https://www.ebtconnect.net/what_is_ebt

[2] https://www.amazon.com/Wired-Joy-Revolutionary-Creating-Happ...

[3] Sorry I can't find it anywhere

coffeeski 1 day ago 1 reply      
Yoga. Do yoga. Go to a Yoga Studio, not a gym or a DVD; a studio. Find your balance, find your inner peace and just let it go. Really. This is transformative for me. That and Zoloft.
steve371 1 day ago 0 replies      
Thanks for all the great advices and comments here.

Every job has its ups and downs. Though I agree that if you constantly feel down time, that probably the time you take a break.

What I find hard is that no single method works for me for a very long time. (Probably because it can trigger the bad memory? ) So I need to find a new approach when I find the old one does not work any more.

akamaka 1 day ago 0 replies      
I've never been able to separate work from the rest of life, even after more than a decade of working.

The only answer for me has been to find better jobs, or, better yet, taking long periods of time away from work entirely.

andypi 1 day ago 0 replies      
I think you need to deal with this before you get to the edge point. You need a way to understand your own emotions and why you are feeling like that, and start to resolve underlying things like stress, strained relationships, existential angst like what is the point of work etc. I find praying to Jesus the Messiah helps me a lot.
mcculley 22 hours ago 0 replies      
> Meditation/music can only help when you are not at the edge point.

This sounds like a bad assumption about meditation to me. In my experience, regular meditation practice helps me keep that edge further away. Negative emotions are not useful to me or those who interact with me at work or at home.

wpietri 1 day ago 0 replies      
I second a lot of the things here, including regular therapy, self care, and thinking about whether another job would be better. You might also consider a job-specific coach who will help you figure out how to solve workplace issues before you hit "murderous".

But one other thing that works for me is long walks. I walk until I'm no longer angry, and then I turn around and walk back. Eventually, I get worn out, both on the topic and physically.

thunderbong 1 day ago 0 replies      
Sometimes when this happens, I try to think of the worst -

What would happen if I lost my job?

What would happen if I were to die tonight?

Sometimes it helps to realize that nothing much really, I mean really, matters - ideology, opinion, software, even my own life.

Sometimes, 'Pearls before Swine' helps to put things in perspective! [1]

[1] http://www.gocomics.com/pearlsbeforeswine/2005/11/20

samblr 20 hours ago 0 replies      
The best years when I left work related stress to home was whilst brisk walking close to 4 miles back home. It took me about an hour.

Also, an hour on exercise bike at home is good.

Benefits of above activities was/is - I cared more about food and sleep.

jorgemf 22 hours ago 0 replies      
Why do you want to treat the symptoms and not to cure the problem? It sounds you come emotional from work too often. It is not healthy to be like this for long time, so even if you decrease the symptoms it is going to take in your health sooner or later
gaius 1 day ago 0 replies      
You are up against the force of evolution here. For a million years the correct response to threat or stress or danger was fight-or-flight. Don't feel bad that you can't resist it, you were never meant to. What workout are you doing that makes you more angry? Maybe if you are lifting go for a run or vice versa?
bradfordarner 21 hours ago 0 replies      
Lighten the mood and then talk to the universe/world (whatever you want to call the something that we are all a part of).

I know. I know. That might sound weird and all. But, it is the only thing that helps me. I grew up a very calm person but after many years in the military and a couple of combat deployments I seemed to develop a very strong aggression issue. I'm calm most of the time, but when something gets to me I can get into a deadly loop where it just gets worse and worse. It starts to feed on itself. Then, my wife can say something small and my internal monologue gets darker and darker and whinier and whinier.

So, yes, don't let it get to the "edge point"...that is hard. That takes a long time of understanding yourself (talking to the universe or journaling is the best way that I feel I make progress in that area too.) So, the first step when you get to the edge is to return to being happy. It doesn't matter what it takes. Watch a stupid video on YouTube. Just get back to a place of "happy" even if just for a moment.

Lighten the mood. Then, start journaling. But, the goal of the journaling shouldn't be whining: "why me, oh why me??" I've done that a lot. It is really not helpful at all. It makes it worse over the long-term.

So, what do you journal/talk-to-the-universe about? You start investigating who you are and why the current situation is making you upset. Start asking yourself: why am I angry. But ultimately, the goal is to drill down until you find the good in everything. For example: "Why am I angry that Joe is fighting me so hard with what I know is a bad direction as far as design patterns is concerned? Why do I care at all? Because I want to built software that I'm proud of. Don't we all want to build software that is well built and a meaningful creation? So, what Joe doesn't want that? Of course, Joe wants that as well. We just have different ideas about how to make the best software possible. By why am I so fired up and angry about it? Because I don't want to believe that I'm coming to work each day for nothing..."

Just keep going...even 15 minutes can make a major difference. I've had times in life where it took an hour and sometimes when it went on for over 6 hours. There isn't a goal in terms of what you are getting at. Productivity is certainly NOT the goal of the exercise. Just talking/writing is the goal of the exercise. In the end, my wife is happier and I feel that is the larger goal. I want to be kind to other people, especially my wife, rather than burdening people with negativity.

blatherard 1 day ago 2 replies      
You might want to check out Stoicism, the philosophy, which has a lot to say about emotions. How to Be a Stoic: Using Ancient Philosophy to Live a Modern Life by Massimo Pigliucci is a pretty good intro. You can also try diving right into original sources like the Meditations of Marcus Aurelius, or the Enchiridion by Epictetus, or something by Seneca. There are many translations for all of these.
andrei_says_ 1 day ago 0 replies      
If possible, buffer your time at work from your time at home with a physical activity which allows you to viscerally expend energy and possibly rage.

A workout could be good. Martial arts class, intensive cardio, something allowing you to express rage and get physically exhausted in a controlled, harmless, socially acceptable way.

nezo 21 hours ago 0 replies      
Try to allocate some time to think about what happened, what makes you angry.Do this maybe when walking (That's what I do) or when commuting, and prevent yourself from thinking about it once at home.
patothon 12 hours ago 0 replies      
Why don't you change job to work at a place that doesn't mess with your emotions?
outworlder 1 day ago 0 replies      
You need to figure out what the underlying issue is. Is it just about work? Are you happy (relatively speaking) when not at work, like weekends?

If not, figure out what's wrong. Could be that you need to change jobs, get extra or better sleep, vitamin-d (helped for me). It could also be that you need some professional help. There's no shame in that.

cvaidya86 22 hours ago 0 replies      
Run for an hour. Seriously, with great music or a tech talk in your earphones whichever you prefer.Another good one is Heartfulness method of Cleaning or Relaxation. YouTube it there's lots of videos of it.
Beltiras 1 day ago 0 replies      
Since this is a recurring issue I strongly advise you to seek professional help. There may be underlying issues that will not go away without treatment. All the methods you mention may be effective for issues. This sounds like a problem.
psenior 1 day ago 0 replies      
I have heard some military and law enforcement friends mention something along the lines of "hang your fangs at the door." In those fields, it's very clear who your "enemies" are versus "friendlies." I suppose there is some serious compartmentalization going on in order for this philosophy to work.
igtztorrero 20 hours ago 0 replies      
Just drink a beer in your pub and talk to a stranger about anything
anovikov 23 hours ago 0 replies      
I had same problem. Ended up developing personality change. It was like 'they are all idiots, what can i do!!' and now it is 'they are all idiots, great, i am here to take advantage of them'.
Cozumel 1 day ago 0 replies      
You need to remove yourself from that environment ASAP, find another job.

If all jobs make you feel like this then the problems deeper, either find something YOU want to do, like making a chatbot that would really help in this situation or maybe just forget about work, take early retirement, go see the world.

Life is too short to waste it on something making you angry.

galfarragem 1 day ago 1 reply      
Take a long walk home.

"I can't! I live far away from my job." Yes you can: get out on a bus/train/whatever stop before your home. 1 hour walking is ~5 Km.

"I drive home bro." So park it 5 km before your work.

JonRB 1 day ago 0 replies      
[Depending on where you are] you might find there are mental health services with 24h phone lines for people in your situation.
vivekchand19 1 day ago 0 replies      
For me getting hooked to something else I am passionate about takes me away from work worries. I am currently hooked to Self-Driving Cars, doing a Nanodegree from Udacity.
exabrial 23 hours ago 0 replies      
Get a new job before your entrepreneur spirit is crushed. Just quit. Seriously! There are way better gigs. Put that passion into something that can change the world.
strictnein 17 hours ago 0 replies      
It's tough to accomplish before you get home, but I find a good nap really helps clear the head.
antitouchscreen 1 day ago 0 replies      
Brazilian Jiu Jitsu. Teaches you how to recognize when you are in an adrenaline-filled, tense state. Over time, you act and think more deliberately, even in equally tense situations.
orblivion 1 day ago 1 reply      
You said you tried music but you tied it in with meditation. Have you tried aggressive music to pace your mood? And then maybe some more relaxing music after.

(I'm curious if people here chime in to say this is a bad idea for some reason.)

watwut 1 day ago 0 replies      
Depending on what causes the emotions, you need new job, new position or different way how to deal with whatever causes those emotions in the first place. You should not be in such highly emotional state.
kyled 1 day ago 0 replies      
Can you work on whatever stresses you out at work?

If not, find a job that doesn't stress you out?

awjr 1 day ago 0 replies      
Cycle. Seriously. Cycle. Meditate while cycling. Stop and view the scenery. Appreciate the beauty around you. Feel the miles go by.
bsvalley 1 day ago 1 reply      
Efficient way - snap at work not at home, let everyone know about your problems and frustration. Man up.

Shortcut - crack up a beer or two when you get back home then think about happy things.

vemv 1 day ago 0 replies      
Hit the gym, first lift (might release some 'emotion'), then use the spa for definitely disconnecting.

Hope it helps, it sure has helped me!

ljf 23 hours ago 0 replies      
It is hard, but always remember that people are responding to the situation, to their own drivers/measures, and their own issues, and _not_ first and foremost to the person you are - but to the message you deliver.

That isn't easy, but if you can forgive their action/reaction and don't focus on the person, you can start to separate those feelings out.

Take time in your responses to others - don't feel you need to respond to that email until you've had time to think it through, sleep on it if needs be. Do what you can to diffuse the situation.

But first and foremost question if this is the right company/culture for you. I've had working experiences that have upset me, but talking with people at the company actually helped to bring about great change - so I didn't need to leave (which was an option), but if it hadn't I certainly would have left, and I'm certain I would have found something new that I loved. In the end I did move on (for other reasons) and have found a position in a very supportive company - the benefits to me personally are huge and I'm sure they also positively impact my family and friends. Don't 'wear' the pain.

Lastly: http://www.explainxkcd.com/wiki/index.php/1768:_Settling

ronilan 1 day ago 0 replies      
There is this club. Can't talk about it, tough.
nyrulez 22 hours ago 0 replies      
"Subtle Art of Not Giving a Fuck" : Read that book. It can help a lot.
branchless 1 day ago 0 replies      
My work drives me insane. I cycle home. 30 minutes of fairly vigorous exercise and it melts away. I realise this isn't an option for many due to location, but it works for me.
synweap15 1 day ago 0 replies      
I think the important part is to understand, that you are in charge for bringing those emotions from work back home.
cylinder 1 day ago 0 replies      
work should not be this stressful, leave your job.
ianai 1 day ago 0 replies      
I practice the letting go portion of meditation through the day. Or I swear in the car.
franze 1 day ago 0 replies      
Well, most people use alcohol,I prefer exhausting yoga with some kick boxing afterwards.
cafard 22 hours ago 0 replies      
Long ago, I found that running home (eight to ten miles) helped.
mrvivaldi 19 hours ago 0 replies      
1. Humor helps. Listen to jokes/comedians.2. Don't care too much. If you have sex, sleep and food you succeed at life.
zuzuleinen 1 day ago 0 replies      
Go to gym straight after work, and then home. Works wonders for me.
staticelf 1 day ago 0 replies      
If you get that mad at your job I would suggest switching jobs man.
partycoder 1 day ago 0 replies      
If your job sucks, just leave your job. That's what I did and I am much happier now.

I was at a place that paid me very well but had very low standards for hiring. The interview was incredibly easy and, in retrospective, that was a big red flag that I failed to see. After that, if I get an easy interview I will pass on the opportunity. An overly easy interview means you will work with people that don't know wtf they're doing or how to recognize your talent/contributions.

You spend a lot of time at work, try to work at a place that doesn't drain you.

amelius 1 day ago 0 replies      
Work on your posture. Check this study: [1]

[1] https://www.ncbi.nlm.nih.gov/pubmed/27634065

ianamartin 1 day ago 0 replies      
This is a touchy subject, and I want to start by saying that everyone is going to have their own answer.

My answer, when I've been in a situation like this, is to literally talk out loud to myself about what I value and what I care about.

We only get upset about things that we care about. And we only get the most upset about the things that we care about the most.

I had a much more angry, frustrated life when I was a professional violinist than I've ever had as a software developer. When I would play some bad gig for a few bucks and some clown conductor would show up and ruin this piece of music that I spent my life studying, it would make me rage. Or if one of the other violinists in the orchestra I was sitting next to was fucking up and ruining things. . . again, rage. WHY ARE YOU RUINING MY ART, YOU SICK, IRRESPONSIBLE FUCK?!

Or if I was playing a solo with an orchestra that wasn't so hot. Ugh. Why are you doing this to Brahms?

It's genuinely hard to figure this out when you really care about something.

I ended up quitting music as a profession and going into software. I care about the companies that I've worked for, and I care about my role in that and the quality of the code I write. But it's not my life. And I still play my violin with a few groups in NYC. That's not my life either.

I think it boils down to understanding the difference between the means to an end and the end itself.

If you love software the way I love Brahms, great. But don't expect to get that love expressed or respected at work. Recognize the role that work has in your life. It's a means to an end. It's not the end itself. It's a way to get to do the things you love to do with your family.

I decided a long time ago that doing the things that I love the way they should (in my opinion) be done, was up to me. For me that was music. And to a certain extent it has become writing software.

In my mind, a job is a thing that you do, and do well and passionately, for the purpose of supporting the things that you really care about. Maybe it's family, maybe it's writing a novel, maybe it's being a dancer. Who knows.

Again, I want to be careful about the way that I phrase this, but it sounds to me that you have a priority issue.

You need to decide what's really important to you. When you figure that out, I suspect everything else will fall into place.

I'm sorry you are going though this, and I hope you come out of it in a better place. I could be totally and completely wrong, but I don't think there's any little ritual that's going to fix this. You just have to make decisions about what is worth caring about.

Is it your current job, or is it your family?

sixonesixo 23 hours ago 0 replies      
i've got the same problem but the opposite way, i'm struggling on not bringing emotion from home to work
LeicaLatte 20 hours ago 0 replies      
Practice, practice, practice.
artur_makly 1 day ago 0 replies      
and just as important... vice versa
perfunctory 1 day ago 0 replies      
work less.
obstinate 1 day ago 0 replies      
Are you in therapy? If not, that might be a good thing to start doing.
kruhft 19 hours ago 0 replies      
rdiddly 20 hours ago 0 replies      
I agree with the thread of people here saying "your job" is the problem here, EXCEPT, I'm betting it's probably not "your job" per se, but rather "some douchebag at your job." Hard to say, since you didn't give any info about that, and in fact weren't really asking about that. Normally I hate when people answer a "how do I..." question with "Now why on earth would you want to..." but in this case it's quite obvious the problem and the solution is further "upstream" if you will.

Anyway yes there's a component to anger that can be caused by shortcomings in yourself. And yes it reflects a frustration, a disconnect between what you want and what the world actually is. What has to be sorted out is whether "what you want" is reasonable to expect or not. Sometimes you're asking the moon and should accept you're not going to get it. Sometimes however, anger is your tough big brother, stepping in to stick up for you in a shitty and unfair situation. In other words if "what you want" is to be treated with basic human dignity in the workplace, that is absolutely not too much to ask. And again I'm wagering, the problem traces to one or two specific people. Perhaps you need to defeat them in some sort of battle (not physical, or you're going to jail) for them to respect you. Perhaps they annoy everybody else on the team too, and should be removed. Thus I'm coming back full-circle to "maybe it's not the job per se." Maybe your job is precisely the thing you wish you could be allowed to do, if only it weren't for these one or two assholes. Deal with the assholes. Defeat them if you can (and anger probably won't help you here... we're talking straightforward but discreetly sneaky workplace maneuvering) or retreat (leave the job) if you have to. Meanwhile all the other advice still applies... deal with your parental baggage, your diet/weight problem, your expectations of life, your emotions, etc. so that you're less vulnerable to this sort of thing (being made angry).

Edit: and by the way "your diet/weight problem," if you have one (I'm baldly asserting it but I mean it to be taken as pure conjecture) may be both the cause of, and caused by, the anger. Stress makes the body store calories. And then carrying those calories around in the form of fat, subconsciously reminds you of all the other times you were angry and stressed, and increases the chance that when presented with the same or similar situation, or even a dissimilar situation, you'll react again the same way.

koolba 21 hours ago 0 replies      
Get a new job.

If this is happening regularly then it's an indication of a hostile workplace.

Work should be a pleasant experience. It's not a vacation, but it shouldn't drive you to anger on a daily basis.

wcummings 1 day ago 0 replies      
Learn an instrument.
abritinthebay 1 day ago 0 replies      
That's not normal or healthy. See a therapist.

Also meditation will still help but what you're taking about is a broader and deeper issue with how you process frustrations and anger.

That needs professional help. No shame in it - it's quite useful! It's not like they teach it in school is it?

movetheworld 1 day ago 0 replies      
One simple trick I used when in the same situation, was to train myself to block all work-related thoughts. - "Stop! Does it help my thinking of work? No. Then stop." In the beginning you have to learn that you are actually thinking of work right now, so to adopt a pattern of blocking. Later, it gets easier.
I can preview blocked website after pasting it in Facebook any similar fix?
2 points by Salamat  5 hours ago   1 comment top
codepeach 4 hours ago 0 replies      
this will take a url and convert the entire page's contents into an image: https://web-capture.net
Ask HN: Do you use social media?
16 points by irixusr  16 hours ago   20 comments top 16
bsvalley 16 hours ago 0 replies      
I signed up on FB in 2005 and linkedin in 2003. This was when social started to get some serious momentum. I was on myspace before FB. 10-13 years later I do not use any of them. Why? FB seems more appropriate for teenagers or young adults. I grew up since then and have other hobbies. Linkedin is like a Resume, totally worthless (in my case) besides searching for a new job every 3 to 5 years.

Twitter? I opened an account a while back and didn't see any differences between FB status update and 140 character.

jachee 15 hours ago 1 reply      
Doesn't HN itself qualify as a social medium?
5706906c06c 13 hours ago 0 replies      
Facebook - I mainly use it to post pictures of my kids and random thoughts that get a couple of likes to satisfy my appetite for someone else's approval. Come to think of it, posting pictures of my kids seems like a bad idea. I visit is occasionally, but don't really engage in other's political post rhetoric, opinions, etc.

Twitter - I use it professionally and religiously to acquire new follower, follow people in my industry and to keep track of the latest trends, etc. I also randomly reach out to people in the same line of work to solicit feedback.

LinkedIn - more of the same, but I don't put that much effort behind it. I just made sure there is a consistent tone of message between LinkedIn and my Twitter handle regarding my professional persona, etc.

Also, why do you ask?

satori99 12 hours ago 0 replies      
I have never had a FB account. The very idea of having my personal data, keyed by my real name, and managed by an opaque advertising company has always seemed like a shitty proposition to me.

However I do use reddit daily.

xiaoma 12 hours ago 0 replies      
HN is social media. Anyone who answers you here is a social media user. Try asking acquaintances offline and you might find some who aren't.
sotojuan 14 hours ago 0 replies      
> Do you have a Facebook account?

> How about a "professional" social media network?

Have never needed either past college. None of my current friends use it or spend time on it, don't really talk to people I went to high school or college with, and I use iMessage for family. I see no benefit.

For professional social networks, I just never made an account and have no desire to do it. Maybe one day, but maybe not.

For me it's not about wasting time (I waste time on HN, Lobsters, and GameFAQs), just lack of interest and utility.

drakonka 13 hours ago 1 reply      
I have a FB account and use it mostly to post pictures of my cat to my friends and talk to the breeders of my cat as needed. I also have a much more active Twitter account and use it to post pictures of my cat to anyone who will listen. Then I've got two not too active Instagram accounts that I only post to sporadically - one for my fitness/workout posts and the other to post pictures of my cat.
macinjosh 16 hours ago 1 reply      
I gave up twitter/facebook/instagram at the end of 2016 mostly because all the political news and discussion was becoming too much. I don't miss it.

I think I still have a LinkedIn account but never use it. I have never found professional social networking tools useful. I think thats mostly because I don't really need to do a lot of networking as a data engineer. If my job had more of a 'social imperative' (e.g. sales, leadership, marketing, or freelance) I probably would use it.

johngruber 16 hours ago 0 replies      
No for both of them. I closed Linkedin few years back and now I receive some emails through my website; much better quality.

Recently I closed Facebook as well as I was spending too much time there involuntarily, and I've been really productive since then. Every day I miss it less and less. Take into account that I used before and after Whatsapp as the primary means of communication among my friends and family.

partisan 16 hours ago 0 replies      
I don't use my FB account. I think I am averaging a login every 5 years.

I use LinkedIn for professional networking but very sparingly.

I started using Mastodon recently and participate there but maybe a few times a week.

I am on a few programming Slacks and fairly active there. That seems to hit the sweet spot for an old IRC user like myself.

tjalfi 8 hours ago 0 replies      
I have never had a Facebook account.

I signed up for LinkedIn 2 years ago.

Goodreads is the only social network that I enjoy participating in.

codegeek 15 hours ago 0 replies      
facebook: Was fun way back in 2004 when it required a .edu email. Lately, not so much as it has just become a photo-fest of who is doing what and where.

linkedin: I used it well for a while to connect with existing co-workers. I still login once in a while to see my network. Ever since I started running my own thing, recruiter emails have dropped even though not entirely.

twitter: Have one but who wants to see my tweets. No one apparently. I am convinced that twitter is only for celebrities or for updates if you are a company/organization.

AznHisoka 16 hours ago 0 replies      
I use Twitter once in awhile, but I tend to use apps like Nuzzel, and CrowdTangle to get "curated" news from my friends/followers
Ro93 11 hours ago 0 replies      
Facebook is my life
homosaphien 10 hours ago 0 replies      
only HN and reddit, FB is toxic IMO
SeaDude 13 hours ago 0 replies      
Ask HN: hybrid app framework for an app that runs on iOS and Mac
5 points by kartickv  7 hours ago   2 comments top 2
isubkhankulov 5 hours ago 0 replies      
afaik you can use swift for both mac and iOS however they're different platforms so there won't be 100% overlap.have you considered building a web app? you can run it in the browser on both desktop and mobile. you can also use a cordova based framework to wrap it in an app for the app store.
Ask HN: Do you market your side project?
7 points by chrisfrantz  9 hours ago   7 comments top 5
buliam 3 hours ago 0 replies      
I am currently working on a side project and once done will try to do the initial marketing and user acquisition myself, just to practice that skill, as I haven't done that before. However, since I am more interested in building right now than anything else, I would be very interested in partnering up with someone who could take care of the marketing and sales side of things and would be open to both rev share and equity split. OP are you asking because you are interested in marketing a finished product for rev share / equity?
siscia 1 hour ago 0 replies      
I would definitely.

I would go for revenue split which is simpler to track and set up.

david90 3 hours ago 0 replies      
Some mints on acquisition: Product Hunt, show HN, Personally recommend your friends (get the first 100users one by one), pitch to review sites, regular blogging, shameless plug on reddit.
jjude 7 hours ago 1 reply      
If the project is complete, then rev share. If they have good track record then don't mind equity.

Ex: I have a self-published book https://hapibook.jjude.com. The book is complete. I'm creating videos. In this case, I don't mind sharing revenue.

WalterSear 8 hours ago 1 reply      
If they had a track record, I would.
Ask HN: How do you feel about web scraping?
140 points by jackschultz  2 days ago   160 comments top 37
alkonaut 2 days ago 5 replies      
How would the ToS apply to me if I never read them? If I write a script that downloads a page then I just downloaded it, never viewed it.

If you put something on a http endpoint then I can download it. The terms of use of the material just regulates what I can do with it (republish it) but I can't possibly be forbidden to download it.

Anyone with a web server is of course free to just block my attempt to download their page, via a user-agent filer or any other method.

Edit: IANAL so I have zero idea how law is actually applied around the world. My view is just that "how on earth would it be possible to enforce a contract I never saw?".

My view of course also says that I'm free to download the data at


Because they exposed it at a public http endpoint. I'm not so sure everyone (including somecompany) would agree with that. I think it's still perfectly reasonable that I'm allowed to do that - and that the restrictions that may apply to material I reach that way is only related to how I use it. Them posting it publicly on the internet (even if it's not linked) is the same as them having it on a billboard. I very much doubt that's how law works though.

throwaway6845 2 days ago 3 replies      
I built a simple CRUD app for a previous (small) employer. Nothing special technology-wise, but a good concept, sound business model, and backed up with a couple of full-time staff creating content for it. Line one of the T&Cs was "no scraping". Business model was based on sales to individual users but we were prepared to do analysis in aggregate if asked.

A scraper company, funded by magic money (Knight Foundation grants) and $1m of VC, convinced a (UK) Government department to pay them to scrape our site for some analysis the department wanted. They'd never contacted us, never asked for permission, never asked if we could supply the data. Our company was bumping along at this point and having to lay people off. Income from a nice lucrative Government contract would have kept a couple more people in work.

The scraper company's FAQ was, in my view, full-on unethical:

> "we check the robots.txt file. If the site permits robots in general to scrape their site (NOT just GoogleBot!), then we will do so. We will make no effort to look for other terms and conditions as well."

You will ostentatiously "make no effort to look" for T&Cs in case they prohibit the significant contract you're about to sign with the Government? Whoa.

So how I feel about web scraping is simple: "don't be evil". If you're diverting income or traffic from the original site, don't do it. If you're genuinely adding value, go for it, but be open, be prepared to work with the original site, and be prepared to accede to their wishes.

wslh 2 days ago 2 replies      
I think there is a contradiction between web scraping ToS and Internet neutrality. Allowing a site to be scraped (not different with crawling nowadays) only by Google but not by others violates that principle and concentrate de power within few companies.
franze 1 day ago 0 replies      
I consult a sh#tload of aggregators, all of them involving at least some kind of web-scraping, most of the time quite a lot of the data-sources were not asked directly for their approval.

The simple formula is: "Create more value than you take." - read it as "Create more value for those whom you take from than the value you actually take from them."

If you scrap sport results from a sports page and create a competing product, as#hole move, don't do it and you will sued anyway.

Scrap sport results from a sport page, aggregate them into nice charts, but for detailed inspection the user has to go to the source (which you link to and want the user to use), you are good to go (from a product point of view, legally i.a.n.a.l).

The internet is not a zero-sum-game. Building on top of each other, even on data on top of each other, will lead to a better ecosystem, to more value for every participant.

DocG 2 days ago 4 replies      
We had a client who contacted with an issue: site goes down every 15 minutes. After couple of hours of debugging we found the culprit. Some swedish equal rights server was "scraping" site every 15 minutes with massive ddos. We put capacha for the server ip only (let them scratch their heads now) and let it be. If you decide to scrape a site dont bring it down or assume its a big server. Keep it civil and without impact on performance and nobody minds.
paulgb 2 days ago 3 replies      
In a couple places it sounds like you're interested in scraping HN -- if that's the case there is an official API: https://github.com/HackerNews/API

My own take on it in general is that for personal/research use I'm not morally opposed to scraping, even when it's in violation of the ToS, with two conditions: that it doesn't place an unreasonable burden on the server, and that it doesn't invade people's privacy. The legal significance of the ToS is murky at best (disclaimer: I'm not a lawyer) but if the site asks you specifically to stop scraping them or puts up a technical barrier you should stop (morally and, in the US at least, legally: see craigslist v 3taps)

danpalmer 2 days ago 1 reply      
I work in a company that does a lot of web scraping, mostly from companies who's ToS says no scraping.

Instead of violating the ToS we have business contracts with each company, that give us the permission to scrape. We use this as a way to take control of integrations, and put the ball in our court, as most of these companies have little to no technical expertise or resource. By doing this we can create an integration as quickly as we want, instead of waiting months or even never managing to get one if it were to be done through an API.

Scraping can be a powerful tool in this respect, make sure you have permission, but ToS saying no scraping doesn't necessarily mean you can't get special permission.

pedalpete 2 days ago 1 reply      
IANAL, but I'd suggest that it doesn't matter how people "feel", there is a legal element here. For example, you can scrape NASDAQ data from any number of sites, but those sites pay NASDAQ for the data feed. You do not have the right to use that data. You need to get permission from NASDAQ. (I'm just using them as an example.

You don't really get to decide how somebody else's data gets used.

Using your sports stastics example, this will become a grey area as writing becomse more automated, but at the moment, a writer gets a 'statistic' like a score which is made publicly available. There are no limits on using that statistic. But you didn't automate the process of spreading the stats, you, in theory found a fact and wrote about it.

This is different from just giving a feed of stats, or linking through a bunch of services.

atemerev 2 days ago 2 replies      
If you can see it, you can scrap it. It is important to be nice and do not overload site's systems, but personally I don't see a difference if I view the site myself or some script is doing it for me for later consumption.

Technically, sites can do anything they want to make scraping more difficult. But from the moral (and, I hope, legal at least in the future) standpoint, scraping should be your right.

lazyjones 2 days ago 3 replies      
* most sites prohibit scraping but beg for Google to scrape them

* many good products/websites are based on scraped content

* many good products/websites are not feasible because of scraping limitations and limited access to data, even publicly funded data (e.g. no real estate ads with noise overlay despite the EU mandating noise maps in all member states; member states have prohibitive access rules for these maps)

* "rogue" scraping causes problems for many websites; blocking it creates problems for legitimate users of various proxy/anonymization services like Tor. Captchas are not a long-term solution, good programming defeats them.

I'd welcome a simple technical solution for scraping that takes into account the interests of site owners, other publishers, the public. The sooner publishers get together and build one, the better for them.

tomc1985 2 days ago 0 replies      
I laugh at people who try to exercise ownership of bits. It's foolish to place data out there in the open with the expectation that people are going to treat it nicely.

Data yearns to be free, stop fighting it!

tyingq 2 days ago 2 replies      
Reddit addresses this specifically in their TOS and prohibits it. They mention a licensing program.


Doesn't really matter how we all feel about it. If you hit their radar, they'll go after you. Can be expensive, whether you're in the right or not.

You're more likely to hit their radar if you're trying to make money. I suspect you're using affiliate links, right?

boomlinde 2 days ago 0 replies      
I have nothing against scraping. Ideally, all information on the web is ready for consumption by machines and people alike, and any law or contract trying to address machines and people differently in this regard is going to be flawed and technically ambiguous. Potential traffic issues aside, this seems largely unproblematic to me.

It's what you actually do with the information that matters. For example, republishing or otherwise distributing information when you have no right to do so may be an ethical and legal issue.

thinkMOAR 2 days ago 0 replies      
I think this might be an interesting read for webscrapers,


ianamartin 2 days ago 1 reply      
The last time I wrote a generalized web scraper (as opposed to something specific that we had permission for) I put a lot of effort into distributing the load across many websites so that no single site would feel any pain more than if you were just browsing as a normal human being.

We were--at the time, scraping for lead information to add to our marketing database, and this isn't the thing I'm exactly the most proud of in my career. But we all make mistakes. I wouldn't do that again.

At the same time, we rotated things so that we weren't killing the websites in the niche market that we were trying to scrape for leads.

The algorithm was that we would seed Google, Yahoo, and Bing with certain keyword searches that were relevant. Then we'd take the search results from the APIs and stuff them into an array. Then we would sort them proportionally. If we (like we did) most often get the most hits from google, followed by yahoo, and then by Bing, we'd stuff the results into an array and intersperse them.

So if we had 3x google results and 2x yahoo, and 1x bing, we wouldn't hit the google results first. We'd hit a google result 3x then a yahoo 2x, then a bing 1x and cycle.

It was a decent way of doing things.

We never broke anyone's stuff. Even if it should have been.

jawns 2 days ago 0 replies      
It sounds like what you're really asking is this ...

There are some websites whose primary business model is providing content in exchange for something: a subscription fee, or advertising eyeballs. They have a very strong financial interest in your not scraping their content and providing it to others on different terms.

There are other websites who make some content available and explicitly authorize people to use it: various datasets and RSS feeds and such.

And then there is a wide swath of websites that have adopted generic TOS that prohibit scraping, or they prohibit it because they haven't given it much thought and can't think of any particular reason off the top of their heads to permit it.

So what you really want to know is what sites in the third category would consider a sensible scraping policy, if they had to give it sufficient thought.

In other words, if they don't just default to a prohibition because it's already in a TOS template or because they haven't thought it through, what's the rationale for either blocking or not blocking scrapers?

aub3bhat 2 days ago 0 replies      
The legal system does not "decides" on legality unless its forced too. Consider the case of Google Books project. Eventually the courts did rule that it constituted fair use. Or consider the situation involving Flickr and Pinterest. [1] or the one involving RapGenius and lyrics licensing. [2]

So to answer your questions:

 > Are comments on sites like this public data or private? > Does the purpose of your scraping make a difference, if one use is just a project but another would be selling the data?
There is no correct answer, at least unless you are willing to wait a decade and spend millions while the cases make their way through the byzantine legal system of districts, circuits, appeals and supremes. Unlike Science & Technology where there is a "correct" answer, you should approach legal system with different perspective using instincts and acceptable risk tolerance.

The history is littered with people who took a bet, and ended up succeeding or failing upwards.

Finally ignorance is actually preferable to knowledge. By writing this question or say having this conversation over an email you are simply creating a paper trail that can only harm you if you get sued tomorrow. [3]

[1] https://photo.stackexchange.com/questions/53304/what-is-the-...

[2] https://www.nytimes.com/2014/05/07/business/media/rap-genius...

[3] https://www.fastcompany.com/1588353/steal-it-and-other-inter...

hanoz 2 days ago 0 replies      
If it's done in a way which causes no greater load on the servers than a human doing the same job, and especially if it's only for personal use, then I for one feel entirely comfortable about it. And I would give pretty short shrift to any robots.txt rules favouring Google alone, which are clearly morally unreasonable and in my non-professional opinion legally questionable too.
TeMPOraL 1 day ago 0 replies      
I scrap stuff for personal use (mostly to generate RSS feeds for things like newly added files on an FTP servers, or new search results for particular query in a classified ads service). In those use cases, I don't care what the TOS says. I'm just automating my browsing, I'm not exfiltrating data I shouldn't have access to, nor am I republishing it anywhere else.

But in general, I'm sympathetic to all scrapping efforts that provide benefit to people for free.

artilect 2 days ago 0 replies      
This is the reason the robots.txt was created, to tell web scrapers and people building them, what is off limits.

Of course there are people building services that scrape certain sites that appear to be off limits to you.

Those people scraping sites that are explicitly prohibited either:

a. are breaking the rules, potentially the law if it's explicitly prohibited in a ToS, and will eventually have to deal with getting banned, or sued. It's quite a gray area legally but here are some laws that could be used against you:

Violation of the Computer Fraud and Abuse Act (CFAA).Violation of California Penal Code.Violation of the Digital Millennium Copyright Act (DMCA).Breach of contract.Trespass.Misappropriation.Source: Linkedin v. Doe Defendants

b. have an agreement with the website owners allowing them to scrape certain portions of their site.

c. scraping data with no rules concerning it.

For example, Facebook. has a ToS for scraping:https://www.facebook.com/apps/site_scraping_tos_terms.phpAt the bottom there is a form for those that want to get permission to scrape the site.And their robots.txt is heavily used to control crawlers with User-Agents they know. http://facebook.com/robots.txt

It's rare you would run into legal issues, but possible. The question is whether it's morally okay for you to scrape any data you want.

WhiteSource1 2 days ago 0 replies      
There are many legitimate reasons for web scraping and I think its fair that you set out your desires for scraping in your robots.txt file. You can block other bots while allowing Googlebot. Alternatively, you can also use a WAF that restricts bot access.

But I do have a problem with scraping other sites to detract traffic away from them. Perhaps if its for data analysis. Also, I would be very careful as some governments have very strict privacy laws (EU, for example) and you never know what you are scraping.

But one of the other problems is that web scrapers can be used for very nefarious purposes see this article on web scraping attacks: https://www.incapsula.com/web-application-security/web-scrap...

vbezhenar 2 days ago 1 reply      
If something is accessible from the Internet, it's public. Read it or scrape it, doesn't matter. API is only to reduce burden for scrapers and servers.

Though legally it might be punished, so you better don't reveal yourself.

theshrike79 1 day ago 0 replies      
If you don't provide an API or your API is either rediculously expensive to use or behind some arcane vetting process (coughInstagramcough), don't be surprised people if scrape instead of using it.

And if you scrape, just don't be a dick about it. Don't hammer the site with your buggy scraper doing 1k hits per second. And don't resell the data.

hsod 1 day ago 0 replies      
To examine the ethics of web scraping, I think it's useful to strip away all the technical trappings and just look at it as an interaction between two people. We'll call them Chloe the Creator and Sam the Scraper.

Chloe has expended effort/energy/resources to gather and collate information which provides value in some way to Sam.

Sam has invested nothing, risked nothing, and expended no effort with regard to that information.

Chloe decides, in her own interest, to give the public access to the information.

Does Chloe have a moral right to try and impose conditions on that access?

Does Sam have a moral duty to make a good-faith effort to abide by those conditions?

My answer to both of these questions is yes.

user5994461 2 days ago 0 replies      
>>> What about sports statistics that sometimes are "private" by the league, rather than just open for people to use and write interesting articles about it?

Not happening. Sports data is too much valuable. High sale value.

Don't give away for free what you could charge a lot of money for.

onli 2 days ago 1 reply      
There is no such thing as public data that is private. If it is in the web for public consummation, the site has no right to forbid working with the data and re-using it elsewhere. There just is no means for them.

That does not say that one has the right to publish the exact same content. Then it becomes a copyright issue. But remixing it into another site, like yours? You have every right.

Note: That might depend where you live. Legislation might differ, US' fair use is a different concept than germanys public data concept, for example.

orionblastar 2 days ago 0 replies      
I love scraping and hate it too. I have limited experience with it, but some clients want you to web scrape competitors sites to steal their customer list etc. It is a matter of ethics. I tried C# and a few other languages and it didn't work because some Javascript on the site had anti-scraping script. I declined the offer, as I didn't want to get sued by their competitor they wanted me to web scrape.

Web scraping is going the way webbots work now. Have to scrape data to automate stuff.

nandemo 2 days ago 0 replies      
This doesn't address your question directly, but are you aware that Reddit provides an API? Why not use it instead of scraping?
shaunpud 2 days ago 0 replies      
If a site provides a sitemapindex in the robots.txt, would you assume they're allowing their site to be crawled on the pages they've set out within?
drivingmenuts 2 days ago 1 reply      
"Web scraping" covers a pretty broad area from plain data collection to snagging content for republishing.

Can you be a bit more specific?

sparkling 2 days ago 2 replies      
Our opinion does very little. You would have to go ever each site scraped and read their terms of service / agreements.
AznHisoka 2 days ago 1 reply      
Your question is more suitable for the owners of those sites not us. After all it isnt us who would be suing you in court. What we say has little to no impact.
scaryclam 2 days ago 0 replies      
It depends. What's the site? How are you scraping? Is it going to cause traffic issues on the server? Are you breaking terms of service or any other reasonable requests to not scrape? Did you even talk to the site owners? Are you scraping content behind a paywall or similar? All of these questions and others make up the answer to your question, so there's no generalisation to make really.
disiplus 2 days ago 0 replies      
the same i feel about torrenting. if you do it for your needs im ok with it but if you do it with commercial interest one way or another im not ok with it.
wcummings 1 day ago 0 replies      
Web scraping is my birthright, no ToS on this earth can take it away.
devopsproject 2 days ago 1 reply      
> I actually created a site I called blah blah blah (don't worry, this isn't an ad for it)


Ask HN: What language-agnostic programming books should I read?
896 points by robschia  4 days ago   330 comments top 69
DoofusOfDeath 3 days ago 6 replies      
Some of the most interesting books I've read in support of my software-development work are:

* "Compilers: Principles, Techniques, & Tools" by Aho et al. (i.e., "the dragon book")

* "Data Flow Analysis: Theory and Practice" by Khedker et al.

* "Understanding MySQL Internals" by Sasha Pachev.

* "Transaction Processing: Concepts and Techniques" by Gray and Reuter.

* "Fundamentals of Wireless Communication" by Tse and Viswanath.

* "Genetic Programming: An Intrduction" by Banzhaf et al.

* "Applied Crytography" by Schneier.

EDIT: A few additional comments:

(1) Although these books are problem-domain specific, some of them had benefits outside of their problem domains:

* The Dataflow book has some great coverage of fixpoint algorithms. It's really helpful to recognize when some problems are best solved by fixpoint analysis.

* The "dragon book" takes a lot of the mystery out of compilers. That's somewhat helpful when writing code that needs to be fast. It's super helpful if you want to work with compiler-related technologies such as LLVM.

* Understanding the fundamental challenges of transaction processing helps you avoid massive misadventures when dealing with databases or concurrent / multithreaded systems.

(2) YMMV, but I've found it hard to soldier through these books unless I had a need to for my job or for school.

mikekchar 4 days ago 1 reply      
Working Effectively with Legacy Code by Michael Feathers. It's a bit hard to wrap your brain around the Java and C++ examples unless you have experience with them, but the techniques are timeless. You may need to practice them extensively before you understand how important they are, though. In a recent book club we did at work, a common complaint was, "This just looks like common sense". Indeed it does... though the common sense is uncommonly hard to find when you are staring at the actual situations this book helps you with.
otodic 3 days ago 1 reply      
d0m 3 days ago 5 replies      
Structure and Interpretation of Computer Program (it's written in scheme but it's mostly for convenience and its lack of syntax).

Definitely the best book I've read on programming.

petercooper 4 days ago 2 replies      
Programming Pearls by Joe Bentley. And its followup. It's old but it does get you thinking about things.

I'd also recommend The Linux Programming Interface by Michael Kerrisk as it teaches so much about what makes modern Unix what it is but.. it's arguably quite oriented around C by necessity. It's not a "C book" by any means though.

henrik_w 4 days ago 6 replies      
I really like:

- Code Complete by Steve McConnell

- The Effective Engineer by Edmond Lau

- The Pragmatic Programmer by Andrew Hunt and David Thomas

kris-s 4 days ago 8 replies      
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold. I love this book.
eriknstr 3 days ago 1 reply      
"The Design of Design: Essays from a Computer Scientist" by Frederick P. Brooks [1] is language-agnostic and worth reading.

It's about software engineering but also about hardware and some different kinds of design outside of IT.

From an interview about the book [2]:

> Eoin: Your new book does talk about software design in places, but its really about design generally, and the case studies span buildings, organizations, hardware and software. Who is the book aimed at? Are you still writing primarily for people who design software or are you writing for a broader audience?

> Fred: Definitely for a broader audience. I have been surprised that The Mythical Man-Month, aimed at software engineers, seems to have resonated with a broader audience. Even doctors and lawyers find it speaks to some of their team problems. So I aimed this one more broadly.

Brooks is also the author of The Mythical Man-Month which is often mentioned on HN.

[1]: http://www.informit.com/store/design-of-design-essays-from-a...

[2]: http://www.informit.com/articles/article.aspx?p=1600886

alfiedotwtf 3 days ago 3 replies      
Books I'll treasure forever:

 - Advanced Programming in the Unix Environment by Stevens - Operating Systems: Design and Implementation by Tanenbaum - The Art of Unix Programming by ESR - Parsing Techniques by Grune and Jacobs - Applied Cryptography by Schneier

brightball 3 days ago 2 replies      
SQL Performance Explained - Markus Winand

- Excellent book that gets into the internals of what developers need to know about SQL and covers each part as it relates to the 4 major SQL databases (Oracle, SQL Server, Postgres, MySQL)

- Also has an online version: http://use-the-index-luke.com/sql/table-of-contents

The Code Book - Simon Singh

- It's just a good read that covers cryptography and message hiding throughout history. Probably a solid book for somebody around high school age.

pjmorris 3 days ago 0 replies      
'Implementation Patterns', Kent Beck. A semi-language-agnostic extension of his 'Smalltalk Patterns'for how to clearly and consistently express what you're saying when you code.

'Facts and Fallacies of Software Engineering', Robert Glass. Glass presents a list of things everybody knows, or ought to know, and gives both academic and opinionated support and/or critique for why they are and aren't so.

'Making Software', Oram and Wilson. An edited collection of papers on evidence-based software engineering.

'The Deadline', Tom DeMarco. A thinly disguised commercial for his advice on how to organize software development teams and organizations, packaged as light, light novel.

gtrubetskoy 3 days ago 4 replies      
One that hasn't been mentioned yet: "Coders at Work". A very enlightening book about how some of the best programmers in the world approach the craft in their own words.
solatic 3 days ago 0 replies      
Nobody recommended The Phoenix Project yet by Gene Kim?

Unless you have some understanding of your system's architecture, how it's run in production, and why a production environment is Really Different and a Big Freaking Deal, and how operations is supposed to look like, you'll never be an effective programmer, no matter whether you run your own operations in a small start-up or work for a large enterprise with dedicated operations teams.

fazkan 3 days ago 3 replies      
Its odd that no one mentioned it but head first into design patterns is a great/light book on design patterns....
deepaksurti 3 days ago 1 reply      
- The Elements of Computing Systems: Build the virtual hardware and software from scratch. Software includes writing a compiler in a language of your choice, so agnostic in that sense.- The Art of Metaobject Protocol: Extremely insightful treatment of OOP! Alan Kay called it as the 'best book in ten years' at OOPSLA 97.
i_feel_great 4 days ago 1 reply      
Structure and Interpretation of Computer Programs.

I have attempted some of the problems in Lua, Python, Erlang and Ada. It is very doable. So not just for Scheme.

0xbadf00d 3 days ago 1 reply      
I would recommend "Sorting and Searching" Volume 3 from Donald Knuth's "The Art of Computer Programming". Fantastic, in-depth read.
qpre 3 days ago 0 replies      
Not a book per say, but "Out of The Tar Pit" by Moseley and Marks is definitely a must-read.


```Complexity is the single major difficulty in the successful developmentof large-scale software systems. Following Brooks we distinguishaccidental from essential difficulty, but disagree with his premise thatmost complexity remaining in contemporary systems is essential. Weidentify common causes of complexity and discuss general approacheswhich can be taken to eliminate them where they are accidental innature. To make things more concrete we then give an outline fora potential complexity-minimizing approach based on functional programmingand Codds relational model of data.```

Link: http://shaffner.us/cs/papers/tarpit.pdf

mtreis86 3 days ago 1 reply      
Gdel, Escher, Bach: An Eternal Golden Braid by Douglas Hofstadter is about the intersection of music, math, and computers.
binarymax 3 days ago 2 replies      
Programming Pearls.

Great short book to get you thinking creatively and how to dissect algorithmic problems, language agnostic with pseudocode examples.

Non-programming but still highly relevant for a professional programmer: Mythical Man Month, and Peopleware.

smcgraw 3 days ago 1 reply      
"Thinking Recursively" by Eric Roberts. Completely changed the way I think about recursive programming and easy to pick up.


MikeTaylor 3 days ago 2 replies      
Definitely, definitely, Kernighan and Plauger's 1976 book _Software Tools_. The code is in RATFOR (a structured dialect of FORTRAN) but all the ideas are language-independent. It remains, four decades on, the best book I have ever read on how to solve the real problems of real program development. Very practical, and covers a vast amount of ground. (As it happens, I am re-reading it right now.)
fatjonny 3 days ago 1 reply      
I've been thoroughly enjoying "Designing Data-Intensive Applications" by Martin Kleppmann. It primarily deals with the current state of storing data (databases, etc) starting with storing data on one machine and expanding to distributed architectures...but most importantly it goes over the trade-offs between the various approaches. It is at a high level because of the amount of ground it covers, but it contains a ton of references to dig in deeper if you want to know more about a specific topic.
__bearMountain 3 days ago 0 replies      
Agile Software Development, Principles, Patterns, and Practices - by Uncle Bob Martin

One of the most influential programming books I've ever read. The code is in Java, but it's east to follow even for a non-Java developer, and the truths are universal. Learn the most fundamental design and encapsulation patterns. Uncle Bob Martin is a legend. This book has probably made me tens of thousands of dollars.


sgt 4 days ago 2 replies      
Thinking Forth


Teaches you to think simple and elegant.

devnonymous 4 days ago 0 replies      
The Aosa series of books are brilliant imho:


Titles :

 * The Architecture of Open Source Applications (volumes I and II) * The Performance of Open Source Applications * 500 lines or less

zimmund 3 days ago 1 reply      
Introduction to algorithms[1] is a great book to improve how you think about code and the way you implement your solutions. Even if you are a seasoned programmer you'll find it useful.

[1]: https://mitpress.mit.edu/books/introduction-algorithms

dustingetz 4 days ago 0 replies      
Joy of Clojure & SICP. To a lesser extent, Learn You a Haskell. 7 Languages in 7 Weeks is an excellent good baby step book if these are too daunting. 7in7 was my first intro to many new ideas.

Any language worth learning has this property of influencing the way you think forever. TDD, Code Complete &co are all very integrated into mainstream industry and are no longer novel. If you find yourself needing to recommend your colleagues to read Code Complete you might consider working on the skills to get a better job.

sateesh 3 days ago 1 reply      
The Cuckoo's Egg by Clifford Stoll. This book taught me how important it is to keep a log of events. These logs come in very handy when the problem one trying to debug spawns multiple complex systems.
lcuff 3 days ago 2 replies      
An Introduction to General Systems Thinking. Gerald Weinberg. This book, now over 40 years old, addresses the 'core within the core' of the reality of systems. Unbelievably good, with a very light-hearted tone.
bphogan 3 days ago 0 replies      
Can I plug my book, Exercises for Programmers? https://pragprog.com/book/bhwb/exercises-for-programmers

It's a collection of programming exercises I used when I taught introduction to programming. They start out incredibly trivial, ("prompt for a name, print "hello [name]" back to the screen. But the trivial part is, in my opinion, the fun part when you work with a new language.

That program is a two line program in Ruby. But it might be much more complicated if you implemented that as your first GUI app in Swift for iOS.

I wrote the book to teach beginners, but I and others use those exercises to learn new languages. The book has no answers, just the problem statements.

ctrlp 3 days ago 1 reply      
If you consider C to be language-agnostic, here are some gems. These are personal favorites as much for their excellent writing as for their content.

The Unix Programming Environment was published in 1984. I read it over 20 years later and was astonished at how well it had aged. For a technical book from the 80's, it is amazingly lucid and well-written. It pre-dates modern unix, so things have changed but much that goes unstated in newer books (for brevity) is explicit in UPE. (Plus, the history itself is illuminating.) It gave me a much deeper understanding of how programs actually run over computer hardware. Examples in C are old-school and take a bit of close reading but oh so rewarding. https://www.amazon.com/Unix-Programming-Environment-Prentice...

Mastering Algorithms in C. Another fantastically well-written book that shows (with practical examples) how to implement common algorithms. This is just such a great book!https://www.amazon.com/Mastering-Algorithms-Techniques-Sorti...


Code (Petzold). This one is truly language-agnostic. Others have mentioned it already. Can't recommend enough if you're iffy on the internals of computers and programming.https://www.amazon.com/Code-Language-Computer-Hardware-Softw...

Write Great Code (Volumes I and II). Randall Hyde's books are fantastic explications of the underlying computer operations. Examples are in assembly or pseudo-code but easy to understand.https://www.amazon.com/Write-Great-Code-Understanding-Machin...

Rannath 3 days ago 3 replies      
Not really programming books, but these have helped me with programming jobs.

-How to make friends and influence people. Anyone who works collaboratively with people needs to be able to communicate effectively.

-The Elements of style. Writing understandable code is similar to any other type of writing.

bandrami 3 days ago 1 reply      
Let Over Lambda. Not entirely agnostic, but delves into Forth, Smalltalk, C, Scheme, and Perl while overall being about Lisp. Fascinating book; really a look at metaprogramming (macros) and closures (that's what "let over lambda" is).
happy-go-lucky 3 days ago 1 reply      
No one has mentioned The Little Schemer.

Edit: Written in a question-answer style, its geared toward luring you into recursion and functional programming.

agentultra 3 days ago 0 replies      
Programming in the 1990s by Edward Cohen. A rather practical introduction to the calculation of programs from their specifications. Plenty of introductions to computer programming involve guessing your program into existence. This is one of those rare books that give a solid, pragmatic approach (with examples) of developing software from solid, mathematically sound specifications and avoiding errors by design.

Even if you don't adopt formal methods in your day-to-day work (often we're not building sky-scrapers) it's a useful book to give you insight into the kinds of questions one should be asking and thinking about when designing software systems.

JustSomeNobody 3 days ago 0 replies      
I think "The Practice of Programming" was and is very good.


Insanity 4 days ago 1 reply      
In addition to those already mentioned here, I enjoyed the book 'Algorithms' by Robert Sedgewick & Kevin Wayne.

The algorithms are explained, and demonstrated (in java). But with the knowledge of how the algorithm works you should be able to use them in another language.

(And even though henrik_w already mentioned it, Code Complete2 is a really good book to read!)

RossBencina 3 days ago 0 replies      
I see you read Kent Beck's TDD book. A good follow-up might be Roy Osherove's "The Art of Unit Testing." I found it to have a lot of pragmatic, practical advice. It's not the final word, but it is a good next step after Kent Beck's book. It has some C#-specific material, but that stuff is interesting to read about even if you're working in other languages.

Lot's good suggestions in this thread, here's one I didn't see:

"Software Runaways - lessons learned from massive software project failures," by Robert L. Glass.

demircancelebi 3 days ago 0 replies      
I have been reading Game Programming Patterns lately. It explains the design patterns with examples from games, and it is really well written by an engineer at Google (Bob Nystrom): http://gameprogrammingpatterns.com/

After I complete this book, I think I'll read his other book: Crafting Interpreters. This one teaches about implementing a programming language from scratch, once in Java and a second time in C.

petra 3 days ago 0 replies      
Sanzy Metz is a great teacher of object-oriented design. Read her ruby book.

"Introduction to algorithms : a creative approach" by Udi Manber. ". Great book to learn algorithm design.

euske 4 days ago 2 replies      
The Psychology of Computer Programming by Gerald M. Weinberg

It's an old book but the most eye-opening one to me.

gmiller123456 1 day ago 0 replies      
"The Elements of Computing Systems" and the accompanying course Nand2Tetris on Coursera. It's a course that starts with just nand gates, and leads you through the development of higher level logic gates, then an ALU, then a CPU, the an assembler, then a high level language compiler, and finally an operating system.

I've seen the "dragon book" mentioned several times, and I think it (and similar books) are good if you really do plan to (re-)invent a real world, large scale, programming language. If you really just want to get a feel for what's going on under the hood, the language presented in Nand2Tetris is specifically designed to have the necessary complexity to cover most of the details, but not so many special cases that you end up "chasing dragons". And the course is modular enough that you can jump right in and just implement the compiler if you want.

paublyrne 3 days ago 1 reply      
Practical Object-oriented Design in Ruby is a great read with a lot of advice on approaching design problems, approaching refactoring and thinking about how to model. It's in Ruby but I feel a lot of its advice is general.
masterzachary 3 days ago 0 replies      
* "Clean Code" Robert C. Martin (978-0132350884)

* "Refactoring: Improving the Design of Existing Code" Martin Fowler (978-0201485677)

* "Computer Systems: A Programmers Perspective" Randal E. Bryant (978-0134092669)

jacquesm 4 days ago 4 replies      
Any good book on statistics would be a huge asset, as well as a book about debugging strategies.
vitomd 3 days ago 2 replies      
If you liked Clean Code, read Clean Coder. A quick summary:

Robert C. Martin introduces the disciplines, techniques, tools, and practices of true software craftsmanship. This book is packed with practical adviceabout everything from estimating and coding to refactoring and testing. It covers much more than technique: It is about attitude.

csneeky 4 days ago 2 replies      
"Types and Programming Languages" (aka "tapl")
BFatts 3 days ago 0 replies      
'The Pragmatic Programmer' is a fantastic language-agnostic manual that still applies heavily today.
IndrekR 4 days ago 3 replies      
"The Elements of Style" by Strunk & White. Not exactly a standard programming book. Not really language-agnostic either -- quite English-centric.

I here assume your source code will be read by others; or by yourself after more than three months has passed.

unfocused 3 days ago 0 replies      
"How to Solve It" by George Plya
g051051 4 days ago 0 replies      
"Peopleware: Productive Projects and Teams" by DeMarco and Lister.
OliverJones 4 days ago 1 reply      
An old standard: The Mythical Man Month by Fred Brooks.
fastbeef 3 days ago 0 replies      
Not a programming book per se, but seeing that you had "The Healthy Programmer" in your list I'll throw it out there:

"The underachievers manifesto" - a short book that does wonders for your mental health in a world that values productivity and superficial, short-sighted goals over everything else.


dyarosla 4 days ago 0 replies      
I've really enjoyed "Dependency Injection in .NET"- despite the name, the book itself is really 95% about Dependency Injection and relatively language agnostic. It exhibits a bottom-up approach to using inversion of control in a way that makes sense and is scalable.


jordigh 3 days ago 0 replies      
It's not language-agnostic, but it's still a great book: The D Programming Language. The reason I recommend it is because Alexandrescu is a great writer who knows a lot about programming languages and the kinds of tradeoffs that a low-level, practical, and safe programming language like D must do.

Even if you never intend to program in D, I encourage you to read this book to get a different view on metaprogramming, memory safety, and concurrency.

timclark 4 days ago 0 replies      
Domain Driven Design by Eric Evans

Implementing Domain Driven Design by Vaughn Vernon

Clean Code by Robert Martin

I think you will find some code in all of the books but the ideas are applicable almost everywhere.

stcredzero 3 days ago 0 replies      
Martin Fowler's Refactoring
OJFord 3 days ago 0 replies      
Sipser's Theory of Computation. It covers automata and languages, computability, and complexity - and is brilliantly written, the proof style in particular: clear 'proof idea's followed by the details that can be easily skipped if you're not interested, or it is clear from the 'idea'.
pjmlp 3 days ago 0 replies      
A few ones:

"Algorithms and Data Structures" from Niklaus Wirth.

"Introduction to Algorithms, 3rd Edition" from Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein.

"The Garbage Collection Handbook: The Art of Automatic Memory Management" from Richard Jones and Antony Hosking

"Code Complete" from Steve McConnell

"From Mathematics to Generic Programming" from Alexander Stepanov and Daniel Rose

cakeface 3 days ago 0 replies      
I really liked "Building Microservices" by Sam Newman. It's a good review on current software architecture and software development process in addition to going over microservices. Honestly microservices are a topic in the book but it could just be called "Software Architecture in 2016".
mytec 3 days ago 0 replies      
Smalltalk Best Practices by Kent Beck. I feel the advice and experience this book provides goes well beyond Smalltalk.
Jeaye 3 days ago 1 reply      
The Reasoned Schemer: https://mitpress.mit.edu/books/reasoned-schemer

Learning more and more about imperative programming, OOP, design patterns, etc is good, but branching out into declarative programming and the functional and logic paradigms will stretch your mind for the better.

The great thing, I think, about The Reasoned Schemer is that it tackles a complex topic with almost no prose. The whole book is basically one code example after another, in a Q/A style. "What does this do?" <allow you to think about it> "Here is what it does, and here's why." Rinse and repeat. I think more technical books should try this.

neves 3 days ago 0 replies      
Any computer themed book of Gerald M. Weinberg is a must read:https://leanpub.com/u/jerryweinberg

If at first sight my may think that they are outdated and superficial, but you can't be more wrong.

ranko 3 days ago 0 replies      
Growing Object-Oriented Software Guided by Tests, by Steve Freeman and Nat Pryce. The examples are, IIRC, in Java, but the ideas about TDD are applicable to any OO language. It'll make you think more about how you write testable code and the test themselves.
smyatkin_maxim 2 days ago 0 replies      
Excellent question btw. Language-agnostic books don't get out-dated that fast and I'd give them higher priority.Personally:

- Code complete

- Pragmatic programmer

- Design patterns

- Programming pearls

- If you're going for hardcore programming: the dragon book, something on modern hardware and something on OS internals.

mathnode 3 days ago 1 reply      
- The Pragmatic Programmer

- The Practice of Programming

- The Mythical Man Month

- The Cathedral and the Bazaar

- The Art of Motorcycle Maintenance

- Introduction to Algorithms

- Hackers and Painters

Some of these do contain mixed language code examples, but they are expressed in a way to be agnostic. A problem is a problem; in any language.

sAbakumoff 2 days ago 0 replies      
"Practices of an Agile Developer: Working in the Real World" - this book was like the Bible for me when I started my career in IT 10 years ago. I re-read it multiple times and I still stick to the practices described in this book. They are language agnostic, they are pretty clear and easy to follow and they can really improve your skills.
maksa 3 days ago 0 replies      
- Pragmatic Programmer, From Journeyman To Master

- Code Complete 2nd Ed.

- Quality Software Management Vol 1-4, by Gerald M. Weinberg

I'd also throw in: Code Reading - The Open Source Perspective

Ask HN: Examples of great scientific presentations?
17 points by qznc  20 hours ago   3 comments top 3
sndean 19 hours ago 0 replies      
Some of the NIH's Wednesday Afternoon Lectures are really good [0], as well as some of the talks given at HHMI [1].

The quality depends on the speaker though. Some venture into TED Talk territory, while others are more focused on a series of publications.

[0] https://www.youtube.com/watch?v=o4KNG7nd938

[1] https://www.youtube.com/watch?v=CoIfNx1EnQQ

tomek_zemla 19 hours ago 0 replies      
You might find work, books and presentations of Edward Tufte helpful. This would be primarily addressing visual aspects of presentations. https://en.m.wikipedia.org/wiki/Edward_Tufte
PaulHoule 19 hours ago 0 replies      
I have always enjoyed the presentations at the Cornell Physics Department:


I have not found another talk series at Cornell (say Chemistry, Computer Science, or anywhere in the Life Sciences) that is consistently as good or broadly interesting. (ex. all of those talks would make sense to a condensed matter, astro, accelerator, elementary or bio-physicist; note that accelerator is about how do you accelerate the particles, elementary could involve what happens when they collide; Cornell has strong departments in all of the above.)

Now they do not have video and slide links for them, but peop

Ask HN: HN like website for Mathematics?
7 points by h3ctic  17 hours ago   6 comments top 5
S4M 4 hours ago 0 replies      
a3n 17 hours ago 1 reply      
It's a worthy question, and there may well be one.

But I've noticed over the years that, often, when we ask "What is the HN for XYZ," the answer often turns out to be ... HN.

mindcrime 17 hours ago 0 replies      
I don't know of anything that's an exact correspondence, but some things that are kinda-sorta that, if you squint real hard:




deepsy 11 hours ago 0 replies      
You can take a look at https://math.stackexchange.com/
Mz 17 hours ago 0 replies      
Ask HN: What are the most used productivity tools in your tech job?
12 points by calpas  1 day ago   14 comments top 8
itamarst 22 hours ago 0 replies      
Figuring out goals, identifying underlying problems, coming up with efficient solutions, focusing on the critical path...

A so-called "productivity tool" will save you 15 minutes a day. Asking questions and thinking will save you weeks of work.

More on productivity here: https://codewithoutrules.com/2016/08/25/the-01x-programmer/

tmaly 19 hours ago 0 replies      
I have a Do Not Disturb button on my phone that allows the phone to ring once then it goes directly to voicemail.

That is probably my number one productivity tool.

The next most important tool is moving everyone to an established process where all requests/bugs/tasks have to come through a single channel. In this case, the channel is Jira for me. Before this, things could come from many different channels. Having things all in one place ensures things do not fall through the cracks. It gives you the ability to see a big picture view of what is going on.

For smaller teams, it might not make sense to use something big like Jira, but none the less, having a process in place really helps.

roryisok 1 day ago 1 reply      
Visual Studio 2015, Vscode, git, SQL Management Studio, Remote Desktop and Vivaldi
bsvalley 21 hours ago 1 reply      
Our coffee machine
yen223 1 day ago 1 reply      
Regex, because most of our work involves manipulating text.
ameister14 14 hours ago 0 replies      
Basecamp and Slack are probably the most used.
richardknop 23 hours ago 0 replies      
Command line, git, github, atom, chrome console.
parvatzar 1 day ago 1 reply      
Winmerge , notepad++, JIRA,ServiceNow
Ask HN: How do I earn money as a teenage programmer?
189 points by Sxw1212  2 days ago   97 comments top 57
icelancer 2 days ago 2 replies      
>but software companies are not willing to hire people my age for good reason

I doubt it. I've hired two 18 year olds to work remotely for me, one of whom does excellent quantitative analysis I've yet to see out of anyone I've employed with an advanced degree.

Companies are by and large very stupid. Don't devalue yourself or your skills.

Craigslist is decent.

One of the best things you can do is invest in a Github or open source portfolio where you demonstrate proficiency with various technologies, methods, and algorithms. It'll be easy for me (or other hiring managers) to look at it, ring you up, ask you questions to make sure you didn't fully steal all the work, and task you with some basic contract work to see if it's a good fit. Then we go from there.

I got a lot of recruiting requests after I contributed a pretty solid amount of documentation and debugging work towards Facebook's HipHop (now hhvm, sort of anyway) repository and project.

You won't get paid upfront, obviously, but consider it a good investment. Hiring managers are more increasingly wanting to see proof that you can do work, especially independently.

Good luck. And if you're handy with R-stats, quant work, machine learning, and maybe even some Python/shell programming (have an application that could use some freelance work), hit me up. Info in my bio.

mindhash 29 minutes ago 0 replies      
Freelancing is hard when you are doing it alone. Try to work with someone who can get projects. So you can just focus on delivery or vice versa.Check out triplebyte (yc startup). It is pretty difficult to get in though.Try to master just one skill.I used to look out for latest skills like elixir , go (when they were new). In your case , look for angular 4, kotlin, swift or elixir. Just pick one and keep at it.

All the Best.

saluki 2 days ago 6 replies      
Don't use UpWork or similar. The rates are low even for a teenager.

The best projects and rates are through your network.

Family friends, businesses your family uses like you mention.

So start asking around who needs a website or web application. Those will be your best gigs, projects and clients.

Look for ways to setup recurring revenue. Maybe a business needs a website offer to build them a basic website, maintenance, hosting, backups and updates for $99/mo set it up with Stripe or Paypal recurring payments. Increase the cost as pages grow. Offer to include once monthly limited updates, usually clients will only update a page every month or so but you can adjust pricing accordingly.

Or if you build a web application for a client offer a maintenance plan that includes hosting, maintenance, database backups, etc.

This podcast has some great information to start building your own products and apps.


And like others have mentioned patio11 has tons of great info.

Good luck.

ruigomes 2 days ago 1 reply      
I've been there while I was still in the first year of college of a 5 year MSc in CS course and needed some extra cash.

I started on Upwork with a very low rate (~$20/h) and applied to as many jobs as the platform allowed me to, with a custom cover letter for every single one. It was time intensive, but without any reviews it's your only way to stand out.

After I got my first project, I made sure that my client was blown away by everything: communication, turnaround time, code quality, etc. When I was sure the client was happy with the result, I asked him if he could leave me a review describing the process of working with me. By asking, you're letting him know that his review matters, and he'll probably put some extra effort instead of just writing something for the sake of it.

I kept (slowly) increasing my rate and continued sending custom proposals for clients. This is your advantage over all the low bids you can be sure they're getting.

After a few projects under my belt, I've built my personal portfolio, making sure Upwork reviews were there, along with a small description of the projects I completed. I've published my portfolio around in a few relevant websites and this has brought me client work directly to me a bunch of times.

After a while, you'll notice you're getting more proposals than you can handle, mostly uninteresting and low pay. That's when I've set my Upwork rate to something high enough that clients that weren't serious just wouldn't contact me.

I was 20 when I started doing this. I'm 23 now, with my MSc almost complete (just delivered my thesis this week) and a remote job working full-time at a startup with a great salary.

This is not a fool-proof plan, I may have gotten lucky here and there, but it is absolutely viable to do this without a resume. I've never had a resume to this day.

nkoren 1 day ago 0 replies      
Think longer-term. Don't over-focus on the money. Unless you're already living independently, you're in a privileged position wherein your expenses -- while still annoying, I'm sure -- are far lower than they will be at any other point in your life. You can take advantage of that by adjusting your priorities. Rather than having a primary goal of earning money, your primary goals should be building up your expertise, your portfolio of work, and (especially) your passion -- (since passion can carry you farther than just about anything else in life).

So, first and foremost, look for projects/companies/organisations where the work is both maximally interesting and maximally personally challenging. There's a lot of living-on-the-edge startups and NGOs that can't pay very much, but wouldn't care about your age if you've got the skills they need. The monthly Hacker News "who's hiring" threads are littered with such companies. The best hire I ever made was via a "who's hiring" post -- I had a scrappy but exciting startup, and was thrilled to find an incredibly talented developer who wanted to work on it at way below market rate. Took me almost a year to find out that he was 19. Really didn't matter, given his competence. He's now accumulating a co-founder's worth of equity, so hopefully the investment will ultimately pay off for him.

Tl;dr, here's your sort algorithm, in order of priority:

1. They don't ask and/or care about your age. (You don't need that BS.)

2. Company/organisation/product is something you actually feel quite passionate about.

3. The role you'd be given is very challenging and would do a lot to develop your skills.

4. Last and least: salary.

whoami_nr 2 days ago 3 replies      
I am in a similar boat as you(a broke teenager) but I don't like freelancing that much. I tried a few websites and they mostly make you do uninteresting work at low rates which doesn't justify the time you put into it. Sure, you can do all of this for the sake of learning but remember time is limited. I don't study CS at college and I've done projects in freelancing websites which I regretted later. It affected my regular college work and in the end I felt like I didn't learn much from it nor did I earn a lot due to the low pay offered. I personally suggest you to try getting involved in some open source program or religiously do bug hunting for a specific company. If you are a student in a college, OWASP code sprint, GSoC, X.org EVoC,Mozilla winter of security are some programs to get involved in.

Also, unless this is your full time work, make sure you concentrate on other aspects of your acads. I lost out a lot in my regular college trying to freelance(gain experience) with little to show for at the end both money and projects wise. It's quite hard for me to find work locally as well as internationally now that I am about to graduate(non CS degree) and most of the companies are skeptical about hiring an Indian without a relevant degree to do work that matters. I want to work on low level stuff/networking and all I could find are web development profiles.

tathougies 2 days ago 0 replies      
I'm not sure how well this advice translates. I found my first job (as a teenager) by scouring craigslist. I sent my resume probably to 3 or 4 hundred companies over the course of a few weeks. Finally, I found one that didn't want a resume but wanted me to complete a project instead. I spent a few hours working on that, submitted it, and got called back -- they didn't care I was a teenager and paid me $23/hr on a contract. This was fantastic money, since the other places I was looking at were places like subway and best buy.

So again, not sure how well the advice translates to your area -- but try looking for places that ask for coding samples or projects instead of resumes.

goldenbeet 2 days ago 1 reply      
I would recommend getting involved with Udacity as a classroom mentor/forum mentor/project reviewer. All you have to do is demonstrate enough domain experience for whichever course you want to help out in. You can do that by either completeing the course in stellar fashion or demonstrating your skills via a stellar personal project. For more info on it, you can check out my other comment from a couple of days ago:https://news.ycombinator.com/item?id=14472353
j3nnif3rfu 2 hours ago 0 replies      
I think freelancing is only one of the many awesome ways you can earn money and build your career as a developer :)

If you're interested in working with people, you can always apply to become a mentor on Codementor. If you earn some positive reviews, you'll gain a bit of credibility to help you work as a freelancer as well!

Keep programming and stay passionate!

cube2222 2 days ago 1 reply      
I am in your position right now. Being 18 and working part time when having school / full time now because of summer break, and doing this since I've been 17.

My biggest advice: get involved into local meetups. Talk to people, try to make a good impression. Try to get friends with the organizers, so you can become a coorganizer eventually.

I'm getting a lot of job offers, but really, the only worth looking at, are those you get offered by other programmers you get to talk with.

Try to read a lot of development blog posts/be active on chats as this way you get knowledge to make up for your lack of experience when discussing technical topics.

EDIT: Addition: Nobody cares about your age if you can deliver.

zachruss92 2 days ago 0 replies      
Don't let age get to you, my best hire was someone who'd just graduated high school.

I was in the exact same situation as you a few years back. I started freelancing on my 19th birthday (literally) after finding out eLance existed. At the time, I had advanced HTML/CSS skills and could barely build a WordPress theme.

My first 2 projects on eLance were the worst. Effectively doing copy and paste work for what ended up being less than $5/hr. I did get some good reviews though. From there I actually got some good clients, some of which I still work with today. My focus was getting projects the final 20% of the way when hiring cheap work overseas didn't work out for them. Clients were more willing to hire a local (USA) contractor and at higher rates to solve their problem, remember this.

After about 6 months, I stopped using eLance. The model is skewed against high quality work and creates a race to the bottom pricing wise. I was able to find enough work to sustain me through local networking (Meetups are awesome) and a coworking space and I haven't looked back.

I'm 24 now, and I have grown a small freelance gig to my full time income. I have multiple Fortune 1000 companies relying on my services for their performance on search engines, and I have the luxury of working on projects/clients that are a good fit (rather than taking on bad clients because I need to).

My best recommendations:- Focus on what problem you can solve for a business rather then what technologies you use (you're an artisan, not a tool). - Network. Network. Network. This can be in-person or virtual.- Don't focus on your age, clients care about your ability to get work done. - Keep honing in /learning new skills that can make you better serve your clients more efficiently. - Don't be afraid to ask for the sale, or to ask clients for referrals to others

If you'd like email me (in my bio) and i'd be more than happy to pass your resume along to some people in my network.

Good luck!

snarf21 1 day ago 1 reply      
All jobs are about convincing someone you are worth it. If you have good examples, that helps to convince them. If you are looking to improve your skills as much as make some cash, you can get some stuff for $15/hr. If you expect to get $50/hr from someone you need to be an "expert" in something or be able to convince them you are at least the perfect person for the job.

I have a bunch of side projects and had some college kids that were interested in a paid internship kind of thing. I spent time and money getting them set up and explaining the project, etc. They totally flaked out and just didn't follow through. You have to understand that time and energy is expended on the other side. I've always taken a "prove myself" perspective. "Yeah, I'll do a little work at $10/hr but then we need to reevaluate things based on my value". You aren't locked in to a bad contract and have the ability to move up. I'm sure there are people on here who will give you a chance, including me if you have any web experience.

throwmenow_0140 2 days ago 1 reply      
I've started to work as a software developer when I was 16. My first job was a small programming job as a casual employee (20h/month) for a research institution (publicly funded) - it was for minimum wage and I hated it.

After 4-5 months, I've decided to become a freelancer and searched for contract work. I've never used Fiverr or other platforms and I'm convinced that neither should you, because this work will only lead you down the wage path where no one really values what you do.

Try to find small local software companies in the range 1-30 employees, go to local meet-ups for software developers (or even organize your own ones) and get to know those people who can give you a job. I'm currently 19yo and I'm meeting executives at my local chamber of commerce. It's not that hard. But first, you have to lose the attitude described in this sentence:

> software companies are not willing to hire people my age for good reason

This is simply not true. Maybe there are some, but not all. I've get paid the same amount of money as other freelance senior developers. They don't care about my age. They just care that

- I can what I say

- I can do what they need (I'm doing web applications & app development)

- I do it professionally and communicate properly

Just go out, drink coffee with other software developers, tell them that you would love to have a meeting with their executives and you're ready to go.

Be confident in your skills (but never ever make the mistake of overestimating yourself), be calm, show your expertise and that you can and will do the job.

Connect with people, this is the most important part for freelancing work - every time you go out and eat something, go with some project managers who happen to be there, too.

Maybe this sounds too easy to be true, but this is what I did. And I'm sure you can do it, too.

Jhsto 2 days ago 0 replies      
Unfortunately, unless you are lucky and have the connections and required social skills (e.g. you live in a place where engineers are respected and you know people who are not age-biased and to whom you can argument your value), the chances of finding well-paid work as a teenager are slim.

For self-taught programmers, before you find work with good pay, there seems to be a phase of self-validation. In a way, you have to pave your road somehow to demonstrate your value. For me, this meant freelancing for individuals and small businesses to gain work to which to refer to when later interviewing. I had done five of these gigs before landing a job opportunity which paid going rates for university graduates. Before that, I had worked three years and made the equivalent of two-month salary in my new job. I had been underpaid. My boss even implied that I had been a bargain, but working for under the minimum wage besides studies was what it required to me to gain some experience.

After the aforementioned job experience, I turned my twenties and at the same time the "age discrimination" I had experienced before turned upside-down. To me, this seemed like I had reached the point of self-validation, after which I was seen as an equivalent of a university graduate.

So, if possible, do not give up because of the low pay as long as you are able to learn. In my opinion, investing in yourself when you are still young is one of the best investments one can do.

In a way, people here talk about product-market fit. To me, it seems like you as a freelancer have been able to a figure that out already by finding businesses which have ordered applications from you. I think that if you are able to continue whatever you are doing now and also learn new (to increase your social capital), have some fun (to avoid burnout) and to make some money (for ramen profitability or to justify your family that you are doing something of value on the computer) then you will eventually land the job opportunity by "chance" (recruiters) or then you are able to justify your skills once you apply to a job which interests you.

nfriedly 2 days ago 0 replies      
I was in your shoes 10-15 years ago. Here's a few bits of advice:

* Upwork (well, Elance back then) worked out pretty well for me. The skill test are a nice way of showing that you can do the work without having much history.

* You don't have to tell everyone that you're a teen - don't lie about it, but don't shout it from the rooftops.

* As other folks have mentioned, a GitHub and/or personal website can help you.

* Create a couple of side projects - they don't have to be that original or full-featured, make a simple game or something. Just put something out there that you can point to and say "I built that".

I do some mentoring and also occasionally hire folks for contract work. Email is in my profile if you're interested in either.

gaelow 17 hours ago 0 replies      
You got it relatively easy: I assume you don't have any good contacts on the business, which is the obvious first choice. You can find clients at upwork or some freelancing site. Prioritize portfolio building and long term projects/recurring clients over one time deals and money. After a trial period, if you are good and trustworthy enough, ditch upwork and start charging them what you are really worth. Obviously don't be a dick and be upfront about your intentions of charging them more when you prove them you are worth it. It is a lengthy process. You need to be reliable and smart, otherwise you will not find good clients and you'll be taken advantage of. I don't want to discourage you but if you aren't good enough yet and you need the money now you'll be better off working at mcdonalds or some other simple teenage job.
threepipeproblm 1 day ago 0 replies      
I started working as a programmer the day I turned 16 in the early 90's, at $50/hr. Freelancing is a good idea... I would focus on small organizations, possibly non-profits. Learn about what organizations do and talk to people there about ideas you have and/or your ability to implement their ideas. Basically, you need to learn sales.

A few decades later I still rely on the approach I learned back then. While many of my peers have a mentality that they are at the mercy of the job market, and need people to create & define work for them, I can create customers wherever I meet people. I have a number of small business customers who would likely never have done development if I hadn't sought them out.

While this isn't the top way to earn a lot of money as a software developer, I continue to work heavily with small businesses because I like it, and because it eliminates a lot of the factors that others seem to dislike about a programming career. Regardless it's a great way to get your foot in the door... companies who can't afford $80,000 programmer salaries -- or the contract equivalent -- can't afford to be prejudiced against your youth and inexperience.

rudimental 2 days ago 0 replies      
Keep checking in with your network for jobs they need that you can do. Present yourself well online (your portfolio and yourself). Expand your network.

Two previous threads about starting to freelance:https://news.ycombinator.com/item?id=8761088https://news.ycombinator.com/item?id=14424699

I'd pick a technology to focus on, and present yourself as a person who specializes in it. Put your skills and work first and foremost online / on your resume. Choose something you can use quickly, and fully build the projects you have or are about to have. Whatever it is. Start with the HTML/CSS/basic JS. Or Wordpress, Drupal. Or React or Rails or Flask. Practice most for the job you have. Second most for the job you want.

Work with the businesses you built things for to be references, and if at all possible get a good looking project one to be publicly accessible. At least as a few screen shots. Clients want to see what you've done.


Good luck!

simplyluke 1 day ago 0 replies      
Hey, I've got a bit of first hand experience here. Been doing professional work since ~15ish and had a handful of friends in similar situations.

1. Use your age as a strategic advantage not a limiting factor.

Seriously, I wish I'd appreciated this a little more because it changes the day you graduate high school and become a college student. You have a unique ability to talk to just about anyone right now as a virtue of being young and curious. Reach out to people you admire, not specifically asking for work, but for mentorship and advice. The returns will be high. People in this industry love young ambitious developers.

2. Get involved in the community.

All the work I got before college was through personal connections. Show up at hackathons (big one), go to technical meetups if there are ones in your area, get to know people on a personal level. Forget "networking" start making friends with other people in the field, you'll start getting calls about work.

3. Code a ton

Seriously, open source, personal projects, whatever. Just improve as a developer. My first steady contributions were doing volunteer web development for a local non-profit and that kickstarted all the professional stuff I was able to do pre-college.

4. Understand your value

Unless you're truly an outlier - you aren't going to be getting paid what a CS grad with 10 years experience is. That's just a reality of your experience level. That said I see way too many younger developers accept gross underpayment. Do not work for someone paying you $10/hour. Your time would be much better spent contributing to meaningful open source work.

5. Get into the best school you can

A good CS program will be a game changer for you, or at least it was for me. Get the grades and exam scores you need to do that. A resume of relevant experience is also massively helpful.

Companies are much more interested in your skills than your age. Startups in particular are very willing to hire teenagers if they can see that you will provide value. Keep learning. If you want to chat more email me (in bio).

majewsky 1 day ago 0 replies      
If you're a student, Google Summer of Code is an option. It's bad timing because the application period is around March/April (so that the work period falls within the summer break), so it would only be something for next year, but I can highly recommend it.

The idea is that Google chooses several open-source projects for the program each year, and then students can apply to the projects with their own ideas (or by taking one of the ideas proposed by the project's contributors). The project chooses the best proposals, pairs the students with mentors, and has them work on the chosen topics for about 3 months. Reviews are submitted to Google at multiple times during that period, and the student is expected to both deliver code and engage in the project's community. Also, the student gets a nice payment from Google for each completed milestone. (I think it comes out at about 4000 dollars or so.)

So in the end, you have a small pile of money, some code to put in your portfolio, actual work experience, and the "Google Summer of Code" checkmark for your resume.

Disclaimer: I have served as a mentor for KDE in GSoC 2009.

wink 2 days ago 0 replies      
Can only speak of 10-15 years ago - but if you know anyone who knows anyone at a (probably smaller) company in your area, that might work - an introduction can be enough to get a shot. I do think smaller companies are better for this than big ones, but ymmv.Also, meetups. But I guess they've in general changed a lot and I don't really too many really young people (who are not studying in college or similar already).
saleeh 2 days ago 0 replies      
I started doing programming at age of 16. I learned PHP then I posted in fiverr.com for freelance projects. I got many project through that and learn a lot
scott00 1 day ago 0 replies      
I think most advice on how to start freelancing applies to you despite your age; it's just going to be a little harder for you than for a more experienced and/or older person. There's a ton of advice on this topic in previous discussions here. See https://www.google.com/search?q=start+freelancing+site%3Anew.... I think it's very doable though.

I'd also caution you not to focus on freelancing to the extent that it hurts your schoolwork. If you want to program as a career, graduating from a top 10 CS school will open a lot of doors for you, and I would make laying the groundwork for that your primary goal.

exclusiv 2 days ago 0 replies      
Get on Upwork or similar sites and price low and deliver. You can up your rate as you earn reviews and a portfolio.
jugg1es 2 days ago 0 replies      
I made a few thousand a year as a teenager in addition to a typical teenage job at a bagel store/CompUSA by leveraging family friends to build websites for their pet projects like a craft business or band website. You have to actively market yourself and constantly reach out via parents, but if you are persistent, you might find work. People will often think that a teenager is both cheap and capable (which they often are) so you might be able to get contracts that formal companies cannot. It takes a lot of practice to understand how to communicate with clients but you will get the benefit of the doubt as a young person.
akulbe 2 days ago 0 replies      
Would you care to put an email or other contact info in your profile, in case someone wants to reach out to you?

I see someone also mentioned Patrick (patio11), you would do very well to follow his advice. TONS of value in his stuff.

evan_ 2 days ago 0 replies      
It isn't sexy but small businesses need help setting up websites and stuff like that. It's good experience both with programming and also working with people (which is usually the hardest part of any programming job).
gboudrias 2 days ago 0 replies      
I'm in Canada, we wouldn't discriminate based on your age (in fact I think it'd be illegal).

I'd say start contributing patches to open-source projects you like. You'll have to fork them, which will make your Github page less empty (but no one will be fooled into thinking they are yours), and you'll learn how the open-source world (and therefore some teams) works.

If you don't like any particular open-source projects, start finding some to like because it's a big part of the culture (unless you absolutely want a corporate soul-sucking job).

edburdo 2 days ago 1 reply      
Start a blog, create a course or two for something like PluralSight or Lynda.

Check out Simple Programmer.

As others have said, this is more an investment than a direct payment... but it will pay off.

flavio81 2 days ago 0 replies      
If you are very good, you will get jobs, either hired or as a freelance.

So work on becoming very good. Choose a platform and a problem domain, and become very good at it.

I was in charge of a software development departament inside a company and i never took the ages of the applicants into account. Only their skills and how nice/approachable/good-humored they were. I got people ranging in age from 19 to about 34, no problem within the team.

In this business what matters is not how mature you look. What matters is to get the job done on time and keeping the customer happy.

Go for it!

giancarlostoro 2 days ago 0 replies      
Not sure of age requirements but maybe try bountysource is the only thing that comes to mind:


I've not used it, but seen projects I keep an eye on put down some good rewards (even users / companies do as well) so maybe worth checking out.

stefanpie 2 days ago 0 replies      
My school used this online grade management system and the students access to it was really bad and only showed the letter grade for each calss average. So I made a python app to manage all your grades and calculate the by scarping the online site using python. I sold the app and made some money so i don't know if you can do the same. Otherwise just keep learning and follow everyone else's advise.
emersonrsantos 2 days ago 0 replies      
Open an account at freelancer.com and similars and see how the system works and what can you offer. It really works, though competition is high. This will help you build a portfolio and make money in the process.

Search for people problems and build an app to solve it. Apps are hot.

Github portfolios, open source projects, etc... may make you look important but it does not generate direct income. Try to avoid the ego trap there.

TamDenholm 2 days ago 0 replies      
I personally have hired a young person on the apprenticeship scheme in the UK, hes great. Hes doing so well he is getting his qualification early and hes also doing very meaningful work for the company.

I dont know if thats an option in your country but people so hire younger coders, perhaps start approaching local companies that are smaller in size?

p0la 1 day ago 1 reply      
What type of stuff are you interested in ? I'm looking for people to help with mobile app dev and could consider remote applicants. Have a look: http://getapony.com/job.html
NullError 2 days ago 0 replies      
Look into making hacks for games or rotation bots using C#. Or go into advance HP/UI scanning for FPS. Bunch of teenage hackers charge $30-$60 a month for those services. Use http://selly.gg for setting up digital shops
coreyp_1 2 days ago 0 replies      
Make open source contributions and establish yourself as someone whose code is trusted and accepted by your peers (the open source community). I don't mean to just publish your own open source project, but rather to be involved in other people's projects, specifically the ones that you plan to use for employment.
SQL2219 2 days ago 0 replies      
Step 1: solve someone's problem

Step 2: collect money

The small business world is filled with unsolved problems. Get out there and find 'em.

kapauldo 2 days ago 0 replies      
What languages and platforms do you know?
helen842000 1 day ago 0 replies      
What kind of work are you interested in? I have a few web apps that I'd like to get up and running if you want something that fits your schedule. My e-mail is in my profile.
nmca 2 days ago 0 replies      
It is possible to become very successful through freelance work - make sure you keep in touch with good contacts and try and move from the position of hire to business partner. Can be done, not easy
justintocci 2 days ago 0 replies      
Search for patio11's posts. Also, develop a great website as part of a portfolio.
Sxw1212 1 day ago 0 replies      
Thanks for all the responses! I've got quite a bit to sort through, so it may take me awhile to get back to you.
protomyth 2 days ago 0 replies      
Without a resume and being a teenager, I would probably do a couple of apps and get them in the app stores. It can get you some money and provides a nice opening line for freelance work.
yunyu 2 days ago 0 replies      
Not sure how well the market is doing now, but I made quite a bit of money (half of fulltime jr dev salary) doing freelance Minecraft development work off of forums like SpigotMC.
jlebrech 2 days ago 0 replies      
join a tech meetup, ask to help someone out and pair program and if you're trusted they might give a few projects or tasks to you.
DoofusOfDeath 2 days ago 1 reply      
When I was in high school, my summer jobs included: lawnmowing, building construction, dishwashing, and being a gas-station attendant. It worked out just fine.
greyman 2 days ago 0 replies      
Getting employed part-time at a normal company is still one of the viable options. How many did you try to ask?
silur 2 days ago 0 replies      
I did freelancing at age 16, sometimes had to lie a little but elance (now upwork) is a good way.
MarkMc 2 days ago 0 replies      
Try UpWork. In the past I have used UpWork to hire a programmer aged 19 or 20 and paid $23 per hour.
Theodores 2 days ago 0 replies      
Keep programming fun and do a normal job. Imagine that you decide to pay for your car bills by working on some type of car garage place, either doing mechanics or serving customers. By being part of this business you will learn many skills that may not seem as important as the latest Tensorflow coolness, but are best learned now rather than later. Learn how to put the customer first, learn how to negotiate, learn how to survive being on your feet all day, take on responsibility, have great camaraderie with the team, learn how to be an entrepreneur, learn about how much effort a company has to put in to pay taxes, staff and suppliers.

Sure you will be too tired when you get home to do all that wonderful programming, but this is not a forever job, it is a job that gets you solid experience that may be more useful than you think.

For instance, imagine some fantastic Tesla gig comes to town. You want to be programming that centre console with some Tensorflow coolness. You are up against some other guy that wants to do the same. You just so happen to know how to sell a car because you have done it, you have also done it as part of a team and appreciate the nuances of it. Your idea of what shows on the centre console will be better than the other guys because you have seen how customers behave on the showroom floor. So for you it is not just a programming job, it is about customer satisfaction and the bigger dream.

I provide an automotive analogy here, I recommend any 'normal job' and that can be in retail or in factories or an office, it matters not. Specialist sales is true retail, stacking shelves or sitting at a till is not what you want.

Essentially all software is for someone or some industry, clearly there is 'plan9' exceptionalism, but the general deal is that software solves a real world problem. So you can do normal jobs in this real world, to therefore understand the world of the problems that the software is trying to solve. So if you work in retail and learn how to put the customer first, that will come in handy if you have to do online sales stuff. Will they want the guy that sat in the basement programming, or the guy that spent time hard at work learning the core thing the hard way? I suspect the latter.

With this strategy you can keep programming fun. By that I mean not patching some legacy system that needs a complete rewrite but that is organisationally impossible. It means not being micro-managed. Also, with 'normal' jobs, the hours may be long but you don't take your work home. With software there is none of that, it is as bad as studying for always having more one can do.

With a lot of normal work there is an aspect of where you are making the world a better place and making a difference. If you find your work is valued by customers or the local community then there is job satisfaction that is quite hard to find if sat behind a screen.

Every business has pinch points, these can often be automated by someone who can code. So in that apparently mundane factory you might see an opportunity to solve a problem or two, in code. It is for you to see these opportunities, however they are everywhere and you can develop a niche new product for your company, if you polish it beyond MVP you might be able to sell that across the sector. For instance, returning to the car analogy, you might find that a common problem in a particular dealership where a product puts you through a hoop or two more than needed. You could be bright and fresh to the problem and get it right for those too encultured in the old ways to see that better is possible.Having solved the problem for your original employer you could then put a 'v 2' version of your software out in a specialist marketplace, then learn how to support and sell a full commercial version of what you originally built. You can also do this whilst keeping the original normal day job. In making such a creative solution out of thin air you have got on with the job and not stood around waiting chicken and egg style for someone to hire you.

Regarding creativity, there is a lot to be said for getting programming gigs in fiercely competitive creative industries. Here technical talent can be hard to find, particularly those willing to cross the line of being actually creative. It is easy to hide in the programming world and to be a 'dunno' with creative decision making. But if you can straddle the both then there are plenty of non-technical types wanting to give you work.

jlebrech 2 days ago 1 reply      
you're a teenager, so work at mcdonalds (for the money) and do code for free or work on a project that'll impress someone in an interview.
joeclark77 1 day ago 0 replies      
Are you a kid in school? If so, I suggest approaching companies in your local community and specifically saying you want a job "for summer vacation". IMHO the biggest risk for an employer is getting stuck with someone that's no good and has to be fired later. By coming in as a freelancer, intern, or summer employee, you take that risk away. And given the desperate shortage of good IT people out there, if you prove yourself better than terrible you'll very likely be asked back.

I would not target "software companies" but rather ordinary companies that lack IT talent. Lots of businesses out there need simple edits to their web pages, or SQL queries from their ETL or CRM (systems they buy but don't know how to work with "under the hood"), and could use your h elp.

usmeteora 2 days ago 0 replies      
Question: why the job?

Do you need to make money, or are you looking for a validating project to work on/experience? If so I have some other ideas but first things first

1. Make sure you stay focused on grades and definitely do Computer Science/Computer Systems Engineering one or the other. Find a school that welcomes the geek like mentality. While I have heard Harvard and such has good Compsci programs, going to a geekier school might be helpful. For me, going to an Engineering school where 80% of the majors were engineers was kind of awesome, it was like everything was a programming club. If you are into that stuff it's fun. You will get a great education elsewhere, but not the same sense of community and experience. It's really fun.

So in the midst of everything, dont forget to make going to a good college a priority. Theres going to be lots of downvotes and explorations of whether college it worth it or not, but I say its worth it because of my following theme: the people

2. Like many have said "oh I did that once at your age and worked for some mind numbing job somewhere etc"

Don't do that here are some ideas

3. Do you live in a big city? If so, places like LA, Bay Area and NYC WILL hire you for projects if you go to the startup scene.

4. In big cities there are hacker houses, reddit meetup groups etc dedicated to programmers. Find and do all of those things and begin to meet other people in your community who program. Going to a hacker house and meeting college kids doing the same thing as you will give you unprecedented advice, let you work on projects with them and you may get an internship to one of the companies they work with.

I dont' want this to sound like political networking stuff, I'm saying that in this field the quality of your work matters, but so do the people. Real programmers will be impressed with you and find places for you meeting them in person you would not be able to find elsehwere.

In San Francisco there are hacker houses dedicated to highschool dropouts starting companies and the little sister of the 17yr old female Russian now woman who started Wanelo I think was the one who started it. In big cities you will find open minded things like this. I would focus on finding communities like this ALONGSIDE your search but you may find these communities find you more venues for work/interesting projects for pay/stock options than you initially anticipated.

I dated a guy who by the time he was a freshman in college had worked for multiple startups because of his programming abilities. He grew up in Boston, his dad worked at Oracle and he went to things like MIT startup bootcamp. Sure he was well connected but also motivated, and in big cities like that you have access to things like that.

5. Continue to beef up your github

For you, learn this lesson now, don't sell yourself short, every great aunt, manager, passerby on the street will want you to code their next unicorn app for them and say theyll pay you later once they "figure out the profit" stuff and its no uncommon for people in your position to get caught being overworked and underpaid on less than stellar ideas.

I would say your best bet is to find projects you like, dive into an area of expertise, VR, AI, compression, graphics, whatever you like and find people working on projects like that whether startups, bootcamps, hacker houses, etc and find those people and work with them and don't settle for working on anythign that youre not interested in and getting valuable learnign experience in.

This is why finding other people who can code is important, otherwise youll be treated as a gruntwork engineer doing data entry or writing someones "app"

6. Finally,

7. You can always make your own stuff opensource and host on a website, even if it doesn't make money. I would say at your age unless you really need the money to get buy and have to choose between working shifts at a restaurant or coding, to focus on your knowledge/interests and produce your own projects in areas you are interested in.

8. Again, if money is not number one priority, you can also use community service as a venue. There are probably businesses in your community, clubs or charities at your school etc who could benefit from some development, and then you can not have to spend time on extracurriculars at school just to impress a college, and turn them into real world experience for you.

jayhuang 2 days ago 0 replies      
As someone who started very early in his teenage years doing something similar to provide for his family and pay off family debt, I'd like to think my advice is at least somewhat relevant.

> software companies are not willing to hire people my age for good reason

First of all, many people have not been through this and are unable to relate. I'll tell you now, yes, as a teen, it will be incredibly difficult regardless of your capability, to have buy-in from the wallet holders of these companies. However, there are ways to mitigate this while not lying:

- Differentiate yourself from your competition. Sure, everyone can code, sure everyone can talk and say they can deliver, that they're meticulous and detailed-oriented. Everyone sounds the same, so how do you sound different? Think about what's important to the business owner. Truly understand why they are pursuing a certain project. Most likely, someone didn't just dream up a project and decide to dump money into it; it's an investment, they want to gain something from this effort. Speak to their hopes, address their fears, and demonstrate an understanding of their business. This insight is sorely lacking in our industry, especially amongst developers who are often too stuck in the mental map of their software architecture, and miss the bigger picture.

- Do not draw attention to your age. I don't want to get in your head that older people, business people have a prejudice against you simply because of age. But it's there, it's incredibly noticeable, and invites questions. Sure, most people will not take issue with your age, but subconsciously, all sorts of questions arrive in their heads. Trust me when I say there is little you can do to ease most of these concerns, no matter how reputable you are, how amazing your past work has been, or how mature you seem. The answer is simple: don't make mention of your age or anything that may indicate you're a teenager. If possible, avoid phone calls and in-person meets; be sure to mention early on that email communication is preferred, and that you are more accessible via email. Over time, if people notice you are more responsive via email, that's how they will reach out to you.

- If they're not going to buy, they're not going to buy, learn to accept it. You will invariably face a lot of rejections, and it may be because of your age, it may not. Either way, accept it and move on. If someone tries to lowball you "because you lack experience", "you're too young", you do not need to beg and chase them to "give you a chance". Don't start off on the wrong foot, it'll cause more headaches than it's worth.

- Avoid bidding sites. It's a rat race to the bottom. You're at the whim of these sites, and whenever they feel like it, they'll increase their cut while offering you nothing more of value (see: Upwork changing their fees from 10% to 20%). If you absolutely have/want to, charge your standard rate, don't lowball just so you can get contracts.

That said, all of this is assuming that you have a lot to offer and are good at what you do. Focus on your personal growth and learning, try to take projects that further that mission, and focus on providing value.

Good luck!

known 2 days ago 0 replies      
Big companies work like mafia.
Jimmie_Rustle 2 days ago 4 replies      
The most honest answer is you don't. Unless you are a legit genius-level developer, in which case you wouldn't be posting this question on here.
What was your greatest growth hack?
38 points by madreader121  2 days ago   24 comments top 12
telebone_man 3 hours ago 0 replies      
We were selling a product to outbound telemarketers. So I bought a bunch of secondary phones for our sales guys, and pumped those numbers into every data list we could find... prize draws... surveys... etc.

They were flooded with telemarketers. And if they spotted an issue (bad quality audio... big gaps at the beginning of call.. and so on) they would open up and insist the telemarketer help them get in touch with a manager so they could help improve things.

We had a spike of sales during that period, before the chaos of managing these phones meant we had to stop. :)

tarikozket 11 hours ago 0 replies      
- Had a trivia game. You would be able to play only 4 turns a day. If you wanted to continue, you would need to invite your friends or ask turns from your friends. We would receive more than a thousand requests each day and it went viral.

- Had a chat website. It would let you create a profile and let your friends ask you questions anonymously. You needed to share your profile on social media to let people know that you are online. They did and it went viral.

microwavecamera 1 day ago 1 reply      
Make something good that people want to use? If your product/service is that hard to sell to begin with your time would probably be better spent on development than growth hacking.
mettamage 2 days ago 0 replies      
Not a growth hacker, so not sure if this is an idea/insight you'd be looking for.

Here's mine:

Asking right people the right questions help. I asked my favorite game-designer about Buddhist meditation (I noticed she's into that as am I), she retweeted it to her 100000 followers.

My Twitter account has 0 followers (or 1) and back then it didn't even have a profile picture.

So asking the right questions :)

exclusiv 1 day ago 1 reply      
Not mine, but my wife signed up for Nextdoor several years ago. They send a postcard verification of address like Google Maps does for businesses.

She found out that all of our neighbors got a postcard inviting them to Nextdoor and it said something like "[So and So] just joined Nextdoor and invites you to join!"

She never opted into this knowingly but I'm assuming it was in the terms somewhere. I thought it was brilliant for acquisition; maybe one of the best strategies I've seen.

trumbitta2 1 day ago 2 replies      
I released my ebook about Bootstrap 3 for complete beginners on 2013/09

Being an ebook, it peaked in the first 5 days and by December it was bombing as expected.

I did a "holiday sale" with discounted prices as planned, and announced it for 12/24 till 12/31. Sales immediately went up and right like there was no tomorrow.

Then I purposely forgot to restore the original prices until 01/20 and people just kept buying it, thinking they were oh-so-smart for taking advantage of me.

On 01/21 I restored the original prices and went back to close to no-sales at all.

Given the cost to produce another copy of what I was selling is zero, I'd say that was a very big win.

NikitaMatveev 1 day ago 0 replies      
My friend was working on admin theme for themeforest for 6 month but admins didn't aprove his theme. What he did?

He made it opensource! And got 2000+ stars on github in one month. 6 month leter he has 7000 stars on github that turn into 2 big clients and a lot of $$$

Take for example Buffer. They created 2 Free relevant products for their field to create buzz around Buffer, ex pablo.buffer.com

vinty_v 1 day ago 0 replies      
At Vinty (drivevinty.com) we work very hard to provide excellent service. This tends to have the effect of people referring us to their friends.
drojas 1 day ago 0 replies      
Not mine, but I know that one of the main bottled water sellers in Chile dropped lots of empty bottles regularly at different kinds of trash containers in places where people that looked at it could associate the brand with "successful" people. It worked very well.
indescions_2017 1 day ago 0 replies      
Not mine. But it's hard to top "Hiding $10k in fake vaginas buried on the beach" for quick and dirty PR...


rdlecler1 1 day ago 0 replies      
Back story. We launched www.agfunder.com as an angellist for ag tech startups with the vision of later including any company in the sector of any maturity. At the time there was no ecosystem and when you said the word 'agtech' everyone assumed you said 'adtech'. When we first launched we hired PR and worked with them to get converse along the usual channels: TechCrunch, WSJ, NYT, and doezens of other tech and ag blogs. The result: crickets. Good luck launching a two-sided marketplace without distribution. Today we have over 30,000 members and subscribers including 4,000 investors, we've have helped companies raise over $35m, and we've become one of the central entities in the emerging agrifood tech ecosystem. Later this year we'll be announcing a $20m investment vehicle we've raised almost entirely from our network of institutional and individual investors. This is how we did it:

(1) Started aggregating and rebroadcasting relevant news and media with our Twitter account. We also addded thousands of people who we thought would be relevant as about 10-20% of people at that time would follow back.

(2) Admittedly a bit of a dark pattern even in 2013 (and certainly has been done independsntly), but when we launched our site we needed distribution. So in desperation I did domain targeted keyword searches on LinkedIn and added about 5,000 people (with about a 30% accept rate). I was shocked to find that LinkedIn didn't really rate limit (I had one warning, but upgraddd my account which seemed to placate them). I then exported this list for our first email distribution list (We were getting a respectable 20% open rate).

(2.1) I then repeated, adding speakers from relevant conferences.

(2.2) Realizing that I couldn't add many more people to LinkedIn without getting flagged and worrying about the hygiene of our domain name to spam filters, we went to the library to use their Reuters accounts and combed financial databases for investor emails, parsed those lists. Rather than uploading the raw list to our email list we instead added this list to my contact list and then synced with LinkedIn, using LinkedIn as a filter to identify people who might be interested in what we were doing. LinkedIn will not flag you if you mport a contact list if those people do not accept the request.

(3) Next we produced a great easy-to-scan weekly newsletter, originally just aggregating top content we were retweeting. Today we have a 30-35% open rate with 60% opening in the last month and 90% in the last year.

(4) That same year we started publishing www.agfundernews.com which we dubbed the TechCrunch for food and ag. Since then we've published over 1,000 articles and have had over 100 expert contributors. At this point all roads lead to AgFunder.

(4.1) We decided to give this a unique URL because we were hoping we could get into Google News (never accepted after multiple attempts and all the while becoming the industries main news blog) and also because it was easier to get interviews when we pitched it as AgFunderNews.com rather than AgFunder.com/news which feels more like a blog. If you spend 15 minutes searching for ag/foodtech you're bound to come across us.

(5) As interviews started to trickle in, each time I would faithfully update my LinkedIn profile knowing that journalists are going to respond to social proof as they're looking for sources. I've been interviewed for TechCrunch, Bloomberg TV, CNBC, WSJ, Forbes and more. Lot's of people discover us from the media.

(6) In 2014 we did a short investment overview of the sector and then in 2015 we spent a month aggregating and curating data for a full 60 page industry report. This report has been a magnet for startups, investors, and media. It's a proof of work quality that builds trust over time. Our research pages are the second most visited pages on our site (top of the funnel).

(7) In 2015 we also added a pop up email newsletter subscription form. Say what you like, but top of the funnel registrations quadrupled in a week and have been growing ever since.

omarforgotpwd 1 day ago 3 replies      
Ask HN: What are great examples of companies handling employees leaving?
16 points by joshdance  1 day ago   13 comments top 8
EliRivers 1 day ago 4 replies      
Their line manager makes sure the card goes round for everyone to sign, and spends what cash gets put in the envelope on something they'll appreciate. If anyone missed the internal eMail about this person leaving, now they definitely know.

People get told a few hours ahead (internal eMail) where the short presentation is. Line manager says a few words, hands over card and present. If they've been there quite a while, someone bigger than the line manager may also say some words. Leaver says a few words, everyone claps. Leaver says when they will be in the pub (repeated in leaver's final internal eMail to the department) and leaver buys the first drink for everyone who turns up.

That's how it's been in every company I've left. It's pretty much the UK standard. It's near perfect; everyone knows exactly what's expected and how it will work. No uncertainty, no mistakes, opportunity to chuck in a few pounds or not.

siegel 12 hours ago 0 replies      
Of key importance is making employees feel safe giving notice - that they will be treated well and won't be pushed out prematurely.

The more notice an employer has of an employee quitting, the smoother the transition will typically be. If employees feel safe giving notice, they will not feel like they have to wait until the standard 2 weeks to give notice.

One step further - really good companies (and managers) will make employees feel comfortable being open about being READY to leave (i.e. they are looking for a job or to go back to school or whatever). That gives the company even MORE time to plan. If an employee feels like they can say this before they have a job in hand, then they are more likely to be open about it.

mooreds 1 day ago 0 replies      
I can tell you about my experience.

1. Focus on transition asap. Give the leaving employee plenty of time to document knowledge.

2. Make sure to treat all parties involved with respect.

3. Have an exit interview with the founder where you can give final feedback (with the understanding that it may be ignored).

4. Treat everyone like you might work with them again.

arjunvpaul 1 day ago 0 replies      
I started at this corporate in Liechtenstein, fresh off my MBA. But, realized a year in, that I would not be a good culture fit.

Let my manager know, beginning of the 2nd year that I would like to transition out and my reasons for leaving. One thing the manager made me clarify is that if I was going to be working for competition. In that case, he felt it wouldn't be wise to have an extended transition. (I was not and considering starting my own startup)

He let me keep my sign on bonus (clue: enough to buy a model-3 Tesla) that I was supposed to pay back if I left before end of 3 years and I agreed to stay until end of 2nd year so that we could have a smooth transition and handover.

The departure was only announced to the wider team, 2 months prior to actual departure.

Allowed the company to have a non-disruptive transition, know exactly why someone was leaving (not some bulls*t reasons) and me to validate and get started on my company right after I left.

Of course, I had a going away party and the good folks even pooled some Swiss francs to put towards my startup too :-).

bsvalley 1 day ago 0 replies      
If the employee had a positive impact on the company, make sure to give a departure bonus as a form of "thank you for your service". The employee would most likely re-consider working at your company in the future. No matter what people say, in the business world, it's all about money.
Angostura 1 day ago 1 reply      
There was an article on HN a few years ago, which spoke about a company that started planning for the employee leaving from their first day of employment. The firm explicitly discussed the fact that only a small percentage of employees would spend their entire work-life there and so mapped out a path whereby both employee and company could get the most out of their time together in terms of both productivity and career progression training.

I've searched for the article of the years, but never could find it.

Anyone know the piece I'm talking about?

bbcbasic 1 day ago 0 replies      
The best thing they could do beyond EliRivers comment is, if the circumstances for, have an open conversation about what the company can improve. And then say let's keep in touch if the new job doesn't work for you maybe we can talk.

Now you might think hey.. that is an exit interview. But exit interviews are formal form filling exercised done by a HR person that may or may not have a positive effect and there is not much incentive to be brutally honest. In fact the opposite.

maxxxxx 1 day ago 0 replies      
They say "OK" and let the person leave. Not a big deal. What else do you expect?
Ask HN: Women in tech, how do you find non-toxic work environments?
448 points by z_shell  3 days ago   467 comments top 39
watwut 3 days ago 10 replies      
Disclaimer: I am women, but never stepped the foot in CA. Geography matters.

I see ping pong tables and free beer as a red flag of sorts and seek workplace that is more formal. The idea is that the less it attempts to be personal/cool/cultural the less personal things (e.g. gender or peoples attitudes/biases or who-likes-who) matters and the more actual work matters. I have no stats to support this, just my guess and some experience.

I also try to find what exactly am I going to do, whether there are clear responsibilities etc. It is easier to prove what you can do if responsibilities are clear and if you can work autonomously so your work is clearly your work. (I don't like true agile partly because then too much depends on impressions and politics and assumptions.) Moreover, clear responsibilities mean people have harder time to act on "women are not technical" assumption. Plus, fluid team structure pretty much guarantees a random collegue will try to micromanage me (like when they have ambition to be leader they tend to think I am good place to start) - then I had to fight for having normal work. Although I am usually able to get rid of that collegue, it is way more pleasant when I dont have to go through it.

On interviews: if it is technically and business oriented, then it is good flag. If they are too cool or personal or seem to be reacting to my gender (includes also being more friendly then I would expect on interview) then it is bad flag.

cbanek 3 days ago 4 replies      
Woman in high pressure tech here.

First, the most important person is your direct manager. Ask recruiters specifically "did I meet with the person I'd be reporting to? If not I would like to meet them." This is the most key person, and if they are not your ally, no matter what the rest of the company thinks, you are sunk.

Ask about other women at the company, or if the team has had women but they've left. If they think that question is stupid, that is one of the biggest red flags.

Of course, try to get a good vibe from everyone you talk to, and if they like you as a candidate, they are likely to be willing to spend extra social time after extending an offer, such as a lunch with the team or something like that.

In the end, I'm sad to report that because good people leave faster, that most likely if you have a great manager that respects you, it's likely if you stay more than a couple years that they might be replaced. You may or may not have a say in that, and they may not be supportive. Always be on the watch.

seaknoll 3 days ago 6 replies      
Woman at a ~100 person startup here -

Wanted to comment because there are a lot of posts on here that seem to promote some idea that the company has to really push for women-friendly policies/activities to be a great place for women to work, which I happen to completely disagree with (save for policies that could be classified as human-friendly such as leave and flexible hours).

I work at a mediocre startup (first engineering job, don't judge!) and therefore we have some trouble hiring people. We've got the ping pong and kegs, which I couldn't care less about, and plenty of brogrammers and other bromployees, but day to day those really are irrelevant if you're getting interesting work and have a good manager.

We absolutely have a diversity issue - I'm the only female engineer on a team of about 20, the company as a whole has maybe 1/3 women, it took the company about 6 years before they had their first woman go on maternity leave (many men are fathers, though their paternity leaves were short), and I don't work with anyone who would be considered underrepresented in tech.

Because we have trouble hiring, we've tended to get people who are super green but excellent coworkers, or who are great programmers with mediocre-to-awful people skills. Of the latter, 2 had very clear misogynist tendencies, and both were fired after complaints made by men. One of the two made my life really uncomfortable when I surpassed his skill level, but only for about a week and then he was fired. I didn't even have to complain - my manager saw it and acted immediately.

We don't have a very active diversity group, though we tried to at one point and it fizzled out. But honestly, my boyfriend works at a company with a diversity group and they do the most ridiculous, cringe-worthy activities that really do not make women look very sensible, unfortunately (arts and crafts, etc).

Basically, my company looks like the exact type of place you might want to avoid if you want a female-friendly workplace, but it's been a wonderful place for me to grow as an engineer. It has some major problems, but is really trying to take concrete steps to improve. I'd love to have some female role models and a more diverse group of coworkers, so please don't discount companies like mine for looking like the stereotype!

thex10 3 days ago 4 replies      
I am a woman of color and to be honest I totally lucked into it.

From the perspective that I work for a large, old company:

* Get a sense of how the company embraces (or doesn't embrace) flexible work arrangements. Can an employee leave early to run errands or pick up kids and make up the hours that night or on a different day without having to jump through hoops and/or get looked at like they have two heads?

My theory is that, in having a mindset that can accommodate different working arrangements, this can extend to accommodating different kinds of people. I'm suggesting that an employee might be less likely to be ostracized as 'other' at a place like that.

* Do they have the resources to encourage your growth by supporting you taking classes, going to conferences, buying you books, etc?

My theory here is that this supports a belief that people are capable of growing and improving, which is at conflict with the belief of anyone not being "technical" enough or somesuch.

If you want to be around fewer ego-inflated tech bros I recommend a place where the leadership is not comprised of ego-inflated tech bros. This combined with what I mention above probably eliminates most startups right off the bat... anyway thank you for listening to my theories

thisone 3 days ago 2 replies      
how do you know the 'great culture' is for assumedly white dudes (what does that mean even, white dude is not some singular set of human traits)?

I'm female, I've been the first and the only woman on teams. I don't give a crap about it. I do my job and expect my colleagues to do the same.

Any place with crap culture is crap culture for almost everyone, no matter gender-identity or race.

I look for places where the employees are passionate and care about what they're doing. Somewhere where code reviews are neither combative nor do they roll over and let things through. Basically somewhere I'll be working to be better for both me and for my colleagues.

Maybe that's something you could ask about. How are code reviews handled, how are implementation disagreements handled. Ask for stories about the last time something fell over. How do they handle call outs, all those stressful situations that people often like to brag about. How someone brags can tell you if you want to work with them or not.

keyboardhitter 3 days ago 0 replies      
I am a woman working in operations. Here is my opinion. It's just an opinion, but it's something.

I don't think work environments are singular entities that should be read as a whole. They consist of stories, experiences, individuals and the like. I apologize if this comes across as condescending. But I think you are feeding a personal bias or fear, and that you may limit yourself by thinking too broadly about the topic.

Think of your goal from the contrary. Even if during an interview, someone you are getting along with -- or someone you get "good vibes" from -- says exactly what you want to hear and you leave feeling awesome and respected, that cannot guarantee an absence of toxicity in the future.

So why even have a formal vetting process, I wonder? What more depth can you possibly get from a process like this? People come and go. People change. People make mistakes. People project their own insecurities. People have differing opinions and cultures. Unfortunately, that includes differing treatment of minorities in some cases.

I'm not trying to be a sympathizer to anyone who is bigoted, but human nature is unavoidable. Instead of trying to protect myself indefinitely (impossible, imo) I empower myself by reminding myself that I have a choice too.

If I'm uncomfortable or if I feel something is toxic to the extent that my personal life is going into shambles, I don't need to defend myself. I just make changes that are good for me. I'll turn down the job offer where I got 'bad vibes' or, if I'm already employed and going through discrimination that can't be solved by civil conversation or HR, I'll seek employment elsewhere -- I don't mean to imply jumping from job-to-job is easy, though. But if I'm really that miserable, it's probably worth it. Then -- I'll try to be wary of the things that made me miserable, and be mindful of them in future interviews/jobs, with the full expectation that things may change for better or worse.

It all comes down to compromise; and everyone has their limits.

I could use my own experiences to try and tell you how to read people or vet them but... it simply wouldn't be relevant to you as an individual. Ultimately, there are far too many subjective variables at play. If I rattle on and on about "red flags I learned from being sexually harassed", I'd be worried I'd give you irrelevant things to be biased about.

It sounds like you know which things you want to avoid. So I'd suggest to be candid, and initiate conversations such as "How does your team deal with discrimination? Have you ever had to deal with toxicity against a certain minority?" You have every right to want to discuss these things, but only YOU can determine what a 'non BS' answer is.

tl;dr ... YMMV. Be wary of personal biases. Try to be pragmatic, and maybe determine a list of "deal-breakers" for your workplace's social life / experience.

> I feel like I keep getting the same canned PR response of how great the culture is (for assumedly white dudes)

I am not sure what being white has to do with anything -- I find it a bit worrying that you're concerned about discrimination but are placing blame on one race and sex so easily. Don't play the same game you are expressing distaste for. That is not fair to yourself or anyone else.

Hopefully my perspective helps. Again sorry if this comes off as condescending, I mean the best, I'm just not super great with compassion in text. Good luck out there.

Jemmeh 3 days ago 0 replies      
Minority woman here.

1.) If it's really a huge concern to you, the best thing to do is probably go to a women's coding group in your local area (try looking on Meetup.com) and talking to the women there. You can ask them pretty candidly how it is at their companies. Only downside is you might miss out on a totally fine company that doesn't have any females yet.

To those saying check if there's a woman on the team already as a metric---eh, if there is that's nice but if there isn't that's not necessarily bad. There are far more men in our field than women. I wouldn't write a company off for just that provided it's a smallish team. I was the first woman and minority on our team. It's fine.

2.) Google the company and maybe also your close team mates. Glassdoor is a good place to check. A bad review or two isn't the end of the world, but if you see a lot stay away. Again downside, a lot of smaller companies don't have many reviews.

3.) You're gonna know if they're lowballing your salary right off the bat when you discuss it during interviews. Make sure you get offers from multiple companies.

4.) You generally can tell a lot from the interview and sometimes you'll have lunch with the team too. Seriously if it's that bad they'll probably show their true colors pretty early on with snide remarks, talking down to you, flirting, etc. I know on a day-to-day basis we women have to brush this off a lot because the world has a lot of creeps. This is not the time to brush it off. Go somewhere else.

5.) No matter how much you try to research ahead of time, sometimes the work environment is just bad. Just as most jobs will have you under a probationary period, you need to do the same to them. Be prepared to leave if it just isn't right. I've seen some people (men and women) just get really wrapped up in the "ideal" of a certain job. Don't fall into that trap.

AnimalMuppet 3 days ago 4 replies      
Disclaimer/warning: Straight white male responding.

But it seems to me that an environment that is toxic for women is also an environment that I would find at least somewhat toxic - not because the crap is hitting me, but because there's a bunch of crap. So what I look for might be useful to you.

I'm older - 55 - and some of what I have is just "hey, this feels like that place that I worked, and it was pretty crummy". But I think there are some specific things you can try to look for.

Look for ego in the interviewing process. If the interviewer (even one of them) is trying to show how smart he/she is, that's a red flag. If one of them can't handle it if you disagree, that's a red flag.

Look for what they say about their culture. Or maybe, look for how they say it. It's fine if they have a ping pong table. At least, it's fine if that's an "oh, by the way". If it's a big part of what they have to say about themselves, that's more of a red flag.

Beer is a bigger red flag. The more their description of their culture sounds like a recruiting pitch for a frat house, the more it's probably toxic to someone who doesn't want to live in a frat house. ("We like to party together after work" is also a red flag.)

I don't know your age. I don't know how much of this is just "Get off my lawn!" But you might find some of it useful.

sevilo 3 days ago 0 replies      
I am a woman of color. Unfortunately I do think location does matter quite a bit as I've heard of all these horror stories from tech scene in the U.S. but so far I have encountered nothing but respectful working environments, and some really good ones where I feel highly valued and have a lot of room for growth.

I think some things good to look out for during the interview are:- when you ask about their culture, what's their response? Beer and ping pong are not culture, they're at best fun stuff that young, hip bros like to do. If beer and ping pong is all they give you as an answer there might be a redflag there, it's possible that they'd discriminate against people who are not like them (people who don't drink etc.) Good answers to hear are how they want their people to succeed, what's their plan on taking their product and company up a level, what do they value and how do they carry out those values on a day to day basis? Do they provide any opportunities for employees to learn? - look at your to-be direct manager, from talking to him do you feel a sense of huge ego? do they think they know everything and is better than you at everything? or do they show a sign of humility and genuinely want to learn about your background and what you can bring to the table? - everybody else that interview you, are they behaving appropriately throughout the interview? ask them what they like and dislike about their job, that usually tells a lot. Again, if answer is "I love the free beer and pizza" something's wrong. They should be telling you what kind of opportunities they're getting at this company. Ask about work-life balance, during one of my interviews someone actually told me "the work life balance here is pretty good, some people have young children, it's not really fair to ask them to stay late everyday", and that's how I got a feel that the employer does encourage life outside of work.- I'd also watch out for companies that hire women for the sake of filling the quota, they're hiring you based on your gender, not your skills. Can you really expect that they'd value your skills enough to be supportive in your career development when you actually work there? Someone that hired you based on gender, would they really want you to get promotions in the future?

I wish I could explain better, but I think if someone is ego inflated it's fairly easy to tell just from some simple conversations, and I tend to avoid those people (I think even if I were not a woman, I'd still avoid those people).

judy_I 3 days ago 1 reply      
I am a woman and work in Boston as an engineer currently programming web apps for a consulting company. I had plenty of good experiences but also had a couple of bad ones. I could always catch something during the interview and or when you walk in. I would first evaluate the employer before I evaluate the team. You will need to find an employer that think highly of women. The founder of my company relies heavily on another female leader. Half of his staff are women Another CTO that I work with only has one full time staff female support person and he relies heavily on her. On the other hand I went for an interview where there are no female engineers and the vp of engineer was suffering from unconscious bias. I later heard that other male employees actually disagreed with him for not hiring me. There was another guy that changed his mind half way through during the interview. You will catch it but if there are no strong female leaders/female staff that are heavily relied on then you probably shouldn't work there.
DanielleMolloy 3 days ago 1 reply      
You need a filter that removes the toxic people, and moves you closer to potential jobs at the same time. I agree with some commenters here that this is a problem for all sorts of people, i.e. including white dudes; given that many are entering the field that are mostly driven by money and coolness.

One suggestion: Search for events and meet-ups where people gather that are driven by a higher-goal idealism depending on your interests this could e.g. be privacy and hacker's events, the sciences, NGOs, environment, political movements. Talk to the men and women there and find out where they are working. It is far more likely to meet people there that are intelligent and work in interesting jobs, and their idealism and progressiveness usually affects other areas of life, too (i.e. they are less likely to be racist or misogynist). Of course I am talking about probabilities here, not guarantees.

seawitch 3 days ago 0 replies      
jansho 3 days ago 1 reply      
I've given up finding that great company culture. Bro cultures, and yes even female jealousy, but the dealbreaker for me is work inflexibility. I get utterly exhausted working in open office environments, and I swing from absolutely crap in small talk to excitable gushing about last night's TV (that nobody watches.) People apparently don't like randomised personalities! I figured that the life of a salaryperson may just be wrong for me...

Now I split my time 30:30:30 on contracting, developing my edtech baby and reading/ art/ learning. The 10% is allocated for family and the blue days.

At the risk of misleading others, please remember that every person has a unique pattern. It seems a lot like retiring but believe me it's not haha. I have to work extra hard in finding and maintaining my contracts, just so I can support my edtech project with enough cash and time.

And, although flexibility is what I was looking for, it's very easy to become idle. In the first few months, I struggled - but this I suppose is a much needed exercise in taming my short attention span (!) It's still too early to tell - it's been ten months now - but as an individual, learner and founder, I think I'm happier and made far more progress than before. And at last my baby is growing! ;)

Hmm. So I ran away rather than deal with toxic/ mediocre environments ... but perhaps this is the best!

jmcgough 3 days ago 2 replies      
Non-binary queer woman here. I can usually get a vibe at interviews about the company culture, from the people I talk to (my questions and their general personalities).

The only team I've ever felt "normal" at was one where one of the interviewers was gay. My boss there had hired a bunch of really talented queer developers from his network, so half the team was queer. I guess I really liked the personalities of the people I interviewed with (it was a full-day pairing interview, which is a lot better for getting a feel for a company than just whiteboarding), so I figured it'd be a good group of people to work with.

The challenge is that if you're interviewing for a larger company, you might not know which team you'll end up in if you accept an offer. Try to avoid this situation, and get a feel for the people you'd be working closely with.

I think if I were to interview for a new company now, I'd reach through my network and try to work with a friend (or former co-worker). I still have never had another woman on my team (after about 5 years in tech), so in the future I'd probably look for a company that has female engineers and high-ranking women within the company.

I've also found that companies that use pair programming tend to value empathy and teamwork, because when you're working that closely with your coworkers every day, no one wants to work with a jerk.

There are some bad companies here in the sf bay area, but there are also some really great places to work. Glassdoor has saved me a few times early in the interview process.

unitorn 3 days ago 0 replies      
Hello! I am a woman in the bay area. Here's what I do:

There are multiple online resources, like women's only whispernetworks. I don't feel safe posting details of these groups on a wesbite like this, but a google search/asking around will probably do. If I'm interviewing at a new place, I usually post on said whisper networks to ask if anyone has heard anything (positive or negative). InHerSight.com <--- glass door for womenhttp://goodforpocin.tech/ <--- I have heard mixed reviews, but the fact that something like this exists is great. The best way to find out about good companies is of course by word of mouth, talking to people who have worked there and getting input on pros and cons

Questions I ask:"What percentage of women, PoC, etc is on the dev team? <---I never expect high numbers, I'm more asking this to see how they respond and if they even know the answer"Are there women in leadership?"*One of my mentors refuses to move forward in the interview process if there were no women on her interviewing panel, which she says is a red flag that they are pretty clueless of how important inclusivity in tech is to her.

GuB-42 3 days ago 0 replies      
I think you are looking at the problem from the wrong angle.

You are a minority and assume your environment will be hostile for that reason. And due to confirmation bias, it will probably appear to look like it. The problem is that you might not be able to see the forest for the trees.

Toxic environments are usually toxic for everyone. And the cause is usually dishonesty, poor management, unrealistic demands, etc... High turnover, poor treatment of customers, etc... is a big red flag. Forget about your status as a minority for now and look at the big picture. Poor treatment of minorities usually go with it.

apervez82 2 days ago 1 reply      
Great question. Ask about age diversity. What is the average age of employees. You can ask for a range to give you a better idea. Also ask about maternity and paternity leave - this will tell you how much thought has been put into the care and personal lives of the people that are working for the company.

Ask about their core values, but ask for examples of how employees embody those values in their daily interactions and their work. How are those values reflected in a manager's leadership style? Ask if they have a public harassment policy. Ask if staff has gone through bias and/or harassment training, or has there been any company-wide discussion around such things. Also ask if you'd be able to speak to other women at the company (someone who is not interviewing you) about their experience working at the company. Equally as important, ask to meet other members of the team you will be working with and see how they are with you (especially male colleagues) to get a sense of if they speak to you or treat with you respect. Have a technical conversation with them (outside interview so the power dynamic is equalized). Remember, you are interviewing them just as much as they are interviewing you. A good recruiter will treat this like a two way sell, because that's what it is.

usmeteora 3 days ago 1 reply      
The biggest issue is when guys use new incoming female employees as dating prospects because they don't meet females elsewhere. They may be nice and friendly but I don't want to have to shake off and turn down 6 guys who are fighting to get at me first everywhere I work, its really not ok. It happens at every place I've ever worked and watch the same guys do it to new girls.

They are here for a job, not to supply you with intimacy. It's even more sad to think about how much these women are not viewed as great additions to the team, but how likely you are to get a date with them. It's very frustrating.

drewrv 3 days ago 0 replies      
I don't have much experience here as I'm a white dude, but my wife asks "What percentage of your team is female?". I think this is a good question, it's straightforward and quantitative. If they are above the industry average that's probably a good sign. If they're below, but they pay lip service to the fact that they'd like to improve that's ok. And if they're below the industry standard and don't care that's bad.

Recently on a phone screen she asked the manager this and his response was "that's something you need to bring up with HR". That's a giant red flag and she saved everyone's time by not pursing the job further.

stevenwoo 3 days ago 0 replies      
If you are open to other locations, I used to work for a NASA contractor near Houston and at that time (when the shuttle was actively used) some of the best programming minds/organization (at least measured by quality/process/number of errors) were the group at Lockheed Martin that made the Shuttle software and I remember it was roughly 50% female from top to bottom. I wonder what became of that group, someone here probably knows the story better than I do. I thought it was SAIC but this article says it was LM.


When I was there in the early 90's, all the NASA contractors were pretty progressive compared to the stories you read about Silicon Valley today (where I am currently living.)

maerF0x0 3 days ago 4 replies      
If you feel you're underpaid, I encourage you to negotiate aggressively for what you feel you're worth. Amazon is full of resources to help you with that.

As for culture, I'd say just ask. Ask what the team does for fun. That will more or less tell you if you will fit in or not.

crucini 3 days ago 0 replies      
I've read many of the proposed questions in this thread - does the CEO have daughters, does the company send everyone to conferences. I personally would avoid asking "what's in it for me" questions unless the company has shown strong interest.

I remember one candidate who received an offer, then insisted on meeting with the CEO a second time and asking him a few more questions. She never got that meeting; the offer was rescinded. The CEO saw her demand as a bad sign.

Any weird question you ask during this sensitive phase will get analyzed and raise concerns. In other words, you have to gather your info via other means.

bethly 3 days ago 5 replies      
I look for existing diversity, and of underrepresented minorities not just gender diversity (IME this is often a better signal.) Especially in upper levels: the % of Software Engineer 1s matters a lot less than the % of architects and tech leads.

Second (and I kind of hate to give this one away), I ask "what do you sacrifice when recruiting to ensure diversity?" The answer should be either "it takes us longer to recruit, because we ensure a balanced pool" or "we have changed our process to allow many types of candidates to shine". If the answer is just "we spend lots of money on sending people to Grace Hopper!" it means they aren't willing to inconvenience or piss off overrepresented engineers. You can't fix culture problems by spending money, and when "diversity" is seen as separate from "recruiting" in general it's a clear sign of a problem.

I also use the Internet: I look on LinkedIn for people who have left the company, see how long women stayed and reach out to find out why they left if they did. Backchannel mailing lists are great ways to find a vouch. I check the social media profiles of their prominent engineers and search with keywords like "feminism", "women" and "she". See how they talk about women in the field, whether they follow women on Twitter, whether they posted angry anti-Hillary memes. I've found that a lot more effective than relying on direct questioning, because there are companies out there that will say whatever they think will let them add you as a shield against the accusations of sexism they are facing. Especially my boss: if my boss is going to be a white dude, he had better have publicly condemned sexism in a way that feels constructive and genuine to me.

One other internet trick is to look at where the women you respect are working and apply there. At the very least, you would get to work with technical mentors you admire and can learn from.

You can find good spots here. Seriously, though, trust your instincts, don't be afraid to walk away and don't be afraid to take an "unsexy" job at an old-school company with an HR department.

WalterBright 3 days ago 1 reply      
There was a ping pong table in my college dormitory common room, and I grew to loath it.

You couldn't do anything within earshot of it. Nobody could just tap the ball back and forth. Noooo. It's serve, back, SLAM! always followed by groans and whoops as loud as possible.

I wouldn't join any company with a prominent ping pong table.

ramy_d 3 days ago 1 reply      
I am on the other side of that table, in a different industry ,and in a different country with a different cultural context, but my 2: Can you identify any women, non-binary, people of color, etc who are in a position of power within the company, like a (co-)founder? I find that to be a big factor. Not that straight white guys are inherently creating toxic work environments but it's surprising how easy it is to not consider other perspectives on every day decisions.
pfarnsworth 3 days ago 1 reply      
I'm an older white male, and it's hard for me to find a non-toxic environment, as well.
leppr 3 days ago 0 replies      
I would (without asking for it directly) gauge the already present diversity in the IT teams, by arranging to visit the offices during working hours.

Emphasis on in the IT teams, because from my personal limited experience, gender diversity in non-technical roles doesn't correlate in any way with environment toxicity/rigidity, while IMO it totally does correlate in tech roles.

Ping-pong tables aren't a red flag at all for me, the company I'm in has them, beer dispensers, nerf guns and all, and the culture is very friendly and welcoming to any kind of people. Our tech team ticks literally every diversity checkbox and everybody can integrate well, yet without being forced to, and despite a few "toxic" elements that don't ruin it for everyone (without being oppressed themselves). The key was that from the start, the first few engineers were already "diverse".

Disclaimer: I'm a while male and I'm leaving for an all-white-dudes startup in one month, so no agenda here.

cjonas 3 days ago 0 replies      
Just reading through these comments makes me wonder if its really the "Bro Culture" or just the reality of trying to force 100 people to work in the same place. It seems inevitable that the majority of "like" people are going to have the strongest social presence.

If you can't stand the environment this creates then it seems like trying to find a remote job would be ideal. That way, aside from the occasional off-topic meeting, work is work.

notalaser 3 days ago 2 replies      
Full disclosure: white dude, not a minority of any kind in my country.

Five years ago, I would have said that the percentage of women in an office isn't necessarily a good indicator of anything. Nowadays, this would be my first advice: ask how many women work there.

With maybe one exception, all the places I've worked in that had very few women were terrible places to work in. Most of them were unpleasant to work in even for men who think "bro" is not a word to be uttered after you turn 19.

Teams that have a strong bias against women act on it almost universally: they drive candidates away with shitty and/or unenthusiastic interviews and they make life hard for those candidates who do get through. They don't end up with all-male teams just because reputation preceeds them and no woman wants to work there -- they end up with all-male teams because prejudice and insecurity tend to tip the balance of their hiring decisions, too.

It's not a universal predictor, but I definitely consider it a red flag. Frankly, it's one that I look at, too. I'm not the SJW type, but when I got into this whole programming thing, hacker communities used to be inclusive and diverse, and I kind of like to keep that going.

alansmitheebk 3 days ago 0 replies      
I'm not a woman but I have a few ideas that might help:

* Check glassdoor.com to see what current and former employees have said about the company and how they rate it. While the feedback may not be specific to gender / diversity concerns, you can probably get a good feel for whether or not it's a happy place or a disgruntled place.

* Ask how many women work there in developer roles.

* Try to find a publicly traded company to work at verses a startup. A publicly traded company has a real HR department and potentially a lot to lose if they get sued. In a startup, there typically is no HR department. There might be one person who is in charge of some HR-related things like benefit administration, but that person is not equipped to deal with things like handling sexual harassment allegations. That person is also likely be friends with the founders.

jdavis703 3 days ago 0 replies      
I've had a couple interviews where there was an extended conversation about diversity in tech (both initiated by the interviewer). One of these was from a well-known SV tech firm that's had a lot of controversy around inclusion issues, and I could tell from the conversation that the other person just didn't get it. At another smaller tech company, the co-founders seemed deeply committed to creating an inclusive organization. So a lot of it is just having these conversations with people and making your own personal judgments (a lot of people say the right things, but the reality might be different).

(for the record I'm coming from the perspective of cisgender black male in case it matters)

nostrademons 3 days ago 6 replies      
Disclaimer: not a woman, but this exact question just recently came up among several of my female friends in another forum I follow. I'm not sure I like or agree with their conclusions, but I'll pass them on in the hopes they'll be useful.

They came up with two big questions that have surprising predictive power:

1.) Do you have daughters?

2.) Does your wife work outside the home? (Probably couched in more neutral language like "Oh, what does your wife do for a living?")

[The women in question were director/VP level, and so were directing this toward CEOs and C-level execs. Presumably they'd be asked of your direct boss. Both questions can be easily worked into basic rapport-building smalltalk, i.e. you don't directly ask them this in the interview, you just casually inquire about their family. Also, this assumes a male boss; the conversation mostly ignored the question of female bosses, other than to note that women who had to fight hard to get where they are during the 70s and 80s can be surprisingly tyrannical towards younger women coming up.]

The daughter effect has been pretty well-documented in the media [1][2]; it appears that even the most sexist men want their daughters to succeed, and that rubs off in how they treat women in the workplace. (See eg. Ivanna vs. Ivanka Trump.) The reason for asking about whether the wife works outside the home is that in two-career couples, the husband necessarily needs to take on a larger share of the housework & childcare, which makes them more sympathetic to the constraints & sacrifices that a working mother has to make.

[1] http://www.telegraph.co.uk/men/relationships/fatherhood/1093...

[2] https://www.fastcompany.com/3032432/why-men-with-daughters-m...

romanows 3 days ago 0 replies      
Could you ask this question directly in an interview? If you have to assume the response is actually talking about "white males" or that the respondent is confusing bias with ping-pong tables, perhaps you are not being direct enough or are speaking to HR instead of a manager?

Maybe it'd work best asked in an abstract, impersonal way: "I've had friends whose contributions have been dismissed because of their gender; what kinds of strategies can combat bias and create a positive environment for all employees?" Ideally this would lead into a nice 5 minute discussion where you could get a feel for their thinking.

brink 3 days ago 3 replies      
Straight white software engineering male here - I've never worked in an environment where I thought it to be sexist. Is the environment out there worse than what I'm seeing or seem to believe?
spinlock 3 days ago 0 replies      
Binary dude here. My example of an awesome culture starts with founders who actually give a shit about people. I was hired and then the company was preemted on a series B. Rather than letting me start and telling me my options were going to be priced higher, the founders reached out with a checklist form the lawyers so they could give me work and get my start date _before_ the deal closed.

Another anecdote would be bring your kids to work day. Everyone went out of the way to make sure the few of us with kids brought them in and that we had a nice event. It's funny, I told the founders my wife was pregnant with twins while I was interviewing. I had kept this a secret from the job I was leaving because I didn't want them to have leverage over me.

We also have women on the leadership team, etc... but I don't really think that's the key (after all, 3 dudes founded the company and they hired women for key positions). I think it all boils down to not being jerks and really caring about the people you work with and the people your product helps (yeah, we've got an actual mission and not the usual silicon valley bs about trying to change the world).

And, our sales team has already hit their numbers ... for the year so we're hiring engineers to try to keep up with the growth. PM me if you're interested in learning more about the team :)

fyrepuffs 3 days ago 0 replies      
You need to interview the company just as they interview you. Ask some questions like what kind of development processes they follow, how they organize themselves and what kind of offsite activities they have. You can tell a lot from the answers about the culture in general. For example do they respect employee's time and do they show good team collaboration and cohesion or are they a 'hero/special snowflake culture'.

If you don't like the answers, then it might not be a good fit for you.

hkmurakami 3 days ago 1 reply      
If the C level including the CEO have (young) children, imo the workplace is saner.
hannele 3 days ago 0 replies      
If you have an interview at their office (and you should), keep an eye on the decor and the body language of the people working there. Ask to see any common areas, the places where people hang out at lunch time. What kinds of posters do you see, what kinds of memes? Although to each their own, you can get a good sense of what's considered appropriate by how people decorate their space, and how comfortable they appear.
VLM 3 days ago 4 replies      
In the military we work with all sorts of people, at least with respect to gender, race, religion, and to a lesser extent sexuality. At the same time, admittedly most were Republican and none of us did drugs.

If you're willing work with Republicans and/or non-drug users (most tech people are super far left and absolutely will not) then working for an ex-mil manager or with ex-mil coworkers will likely be an extremely pleasant experience as they're very comfortable around people of color and women. On the other hand, if weed smoking on duty and membership in Antifa is also required (why?), the ex-mil department might not be as good of a fit.

On a larger scale piece of advice, even if you don't apply this specific match, it is useful to consider that its highly unlikely that your definition of the progressive stack perfectly and precisely matches everyone else on the planets individual definition of the progressive stack, so hopefully inspired by this post, you'll pay close attention to variations in progressive stack composition, assuming you pick your next job solely on political compatibility.

Ask HN: Anyone interested in a Slack channel for hardware makers/hobbyists?
5 points by jiblyyyy  22 hours ago   8 comments top 3
coreyp_1 21 hours ago 1 reply      
Is there any reason not to simply put the Slack invite link here directly?
motivatednoobie 16 hours ago 0 replies      
I'd be interested!
markhenderson 22 hours ago 1 reply      
Ask HN: What keeps you up at night? What do you worry about?
20 points by parkeragee  1 day ago   72 comments top 25
kiloreux 1 day ago 5 replies      
Not being able to make enough money. As I lived in extreme poverty in my childhood (and all that changed thanks to online MOOCs). I now work as remote SE and I have around $10k in savings. I am graduating with robotics and AI masters degree. But I always fear that I will lose all my money and be poor again. I literally prefer dying than being poor again. The worst days of my life, I couldn't have a proper childhood because of that, it's the thing that I fear the most in this life and haunts me everyday.
PerfectElement 1 day ago 1 reply      
My only daughter stopped breathing and turned blue 3 days after she was born, and I, lucky to have attended a first aid course just 3 weeks prior to that, was able to perform CPR and make her regain consciousness. She's 14 months old now and perfectly healthy, but the horror of those minutes where she was dying in my hands still haunts me. It's getting better, but every now and then my brain briefly relives those moments.
Red_Tarsius 1 day ago 2 replies      
1) Climate change and the collapse of modern civilization.

2) Dying before having children or proving my worth. Living in poverty.

3) Losing face. I don't want to disappoint my family anymore.

4) The fear of diabetes and other illnesses.

5) The cultural and demographic destruction of Europe.

deftnerd 1 day ago 1 reply      
Money & being the sole income earner in the house (wife and 3 kids) and doing it by freelancing. Like most Americans, we live payment-by-payment.

The other problem I have is anxiety, procrastination, and similar issues.

If you're asking this to fish for product ideas, I would love to see a managed task-master assistant service.

Remember that story of a guy that used to pay someone to sit next to him and hit him whenever he was procrastinating? Something similar could be set up where when your day starts, you connect with your assistant via video chat. They can watch everything happening on your screen.

At the start of the day, they should spend some time asking what you want to get done and break it down into a task list for you and feed you pomodoro-like chunks. An assistant could monitor 4 to 8 people at the same time with the right software (screenshots and list of open window titles).

A paid task-master or accountability-buddy. Maybe $3 or $4 an hour for the service.

orange_county 1 day ago 3 replies      
What happens after death? Do you simply cease to exist? What happens to your mind and soul? I'm not a religious person but sometimes I wake up in the middle of the night thinking about this. It's such a weird feeling when you think deeply about it.

I try and not think too much about it.

jbreckmckye 1 day ago 1 reply      
I worry that I'm wasting my years on a career that keeps me comfortable but doesn't really exercise my mind. I often daydream about working in academia, journalism or some other vocation where I could be paid to research, think and write. Then I snap awake and get back to writing generic web applications shuffling strings around.
urahara 1 day ago 0 replies      
All injustice of the world keeps me up at night. That good people are dying. That many people have no way out of slavery, poverty, survival mode. That it happens while rich and powerful deny them a chance. That war is everywhere in one form or another. That centuries will pass before we get many of today's problems fixed. That many people stay broken and miserable despite having what seems to be normal life from the outside. That racism, sexism, bullying are everywhere. That so few people actually care about all those things.
iSloth 1 day ago 0 replies      
The past few years have been really hard with family health. On a similar theme, my fitness could be better, but it's not something that keeps me up at night.

Outside of the family/health stuff, I'd say my biggest worry is actually getting something meaningful done in my life. Don't get me wrong, I've got a good job with a well-paid salary and benefits, good family life and financially comfortable, I'm happy and grateful for all that as well.

However, I know I'm technically capable of doing or building something interesting, and ideally profitable to a point that it could be a business to support me. But I always seem to be stuck in the somewhat cliche spiral of pointless procrastination, browsing HN under the false pretence of fishing for ideas and inspiration, which is really just fueling the procrastinating.

I'm not sure if my head is just wired differently to others, but I really struggle to find ideas that aren't a blatant copy of others, and the original ones I can tell are flawed by design or the market is so small that it'll never me more than a little bit of Adsense revenue etc. Similarly, I'm envious of others people's focus to actually get something built, shipped and profitable.

finaliteration 1 day ago 2 replies      
That a history of trauma and lack of stable attachments in my life has but one likely outcome: The eventual end of my life by my own hands.

I see a therapist regularly, but I've always had this sense of being a broken individual who is always a few steps behind everyone else. It feels hopeless and definitely keeps me up at night.

stephen82 23 hours ago 1 reply      
Hmm, let's see what keeps me up all night.

 * Unemployed for 2 years * 35, single due to unemployment * I feel lucky; no kids to torture with this misery * Mortgage ~= 209K euros * Thinking of ways to make a living * Companies avoid hiring me for some reason and they simply reply back with an "overqualified" email. * If I was given the opportunity to change profession, what would be the ideal job for me? * OCD, Highly Sensitive Person (HSP), introvert by nature. Now that's a deadly cocktail! * Have zero friends to go out, plus living in the mountains with parents (thank you financial recession) * Bloody vampires (mosquitoes) around the room, they are everywhere! * Remembering things I did when I was 6 or 7 years old and feel embarrassed now. It happens all the time...

psyc 1 day ago 0 replies      
I don't worry about anything, but Netflix tends to keep me up at night.
_RPM 1 day ago 1 reply      
Gaining weight. I love eating. I could eat a lot of food. I also have night eating syndrome. So I usually have my first meal of the day very early in the morning around 2:00 AM or so. This happens after I fall asleep. I will wake up in my sleep and grab food from the kitchen, usually about 400 calories worth of food. Then, I go back to sleep. I haven't been able to solve this problem.
0x54MUR41 1 day ago 1 reply      
Doing a side project (open source) is what keeps me up at night. I don't know why, I just push hard myself at least there is one commit a day. Beside that, I think random things a lot. I always waste my night to think about it rather than plan or take an action.

I worry about my health. My sleep time is decrease. I have to wake up in the morning and then go to office. When my sleep time is not enough, I wouldn't focus. I lose my valuable time for starting my day, like exercise and meditation. I heard that would be a problem if you don't have enough sleep.

SirLJ 1 day ago 0 replies      
I also used to worry about money after buying the 1st house - it is always more expensive than every projection or budget you make + there is always something to do/repair or buy... Fortunately for me, those worries are in the past and I am sleeping like a baby again...
elorm 1 day ago 1 reply      
I worry about getting corrupted by money and power. At first all i wanted was enough to survive. Then i found out "enough" had no physical barriers. The more money you have, the more you do to keep it or and the more you do to make more.

I worry about being 40 or 50 or 60 and having as much money as a man could dream about and yet finding no peace or having no memories. I worry about looking back to when i was 25 and all i can remember is sitting infront of a computer hitting a keyboard with all my strength and watching that time pass away, never to be regained.

nunez 1 day ago 1 reply      
That by the time I'm finally done with my student loan and credit card debt, something else will come around that will yet again prevent me from hitting my financial goals.

That I even accumulated $40k worth of credit card debt in the first place. This wasn't one of my proudest decisions.

That I'll never be happy with what I have and will always strive for more.

That I'll lose my fiancee/wife in the process.

Heraclite 1 day ago 1 reply      
I worry about not being brave enough to quit my day job (developer) and develop the app that I KNOW would be successful if executed properly.

Also, not being able to build a family later if I fail in my next venture. I'm 31 and feel the pressure to build a family somehow.

tjalfi 1 day ago 0 replies      
I worry about earthquakes (Seattle), machine learning eliminating technical support jobs, and longer term career prospects.
twobyfour 1 day ago 1 reply      
Never being able to retire.

My country turning into either a theocracy or an autocracy (or maybe both at once). Whether there's any way to stem the tide or get out before it slides any further.

Those are the big ones.

sidcool 1 day ago 1 reply      
That I am an imposter and will not achieve, in personal and professional life, anything significant. I might be wasting my life.
random_coder 19 hours ago 0 replies      
That I am not good enough to do the things I dream of doing.
pedrodelfino 1 day ago 1 reply      
I am worried about my grades and my scholarship. I am doing a really tough courses on the Applied Mathematics degree and, currently, my grades are not really good.
AnimalMuppet 1 day ago 0 replies      
I worry about my kids' ability to earn a decent living.
djohnston 1 day ago 0 replies      
Neurodegenerative disease.
max_ 1 day ago 2 replies      
I think I am having mental breakdown.

& I don't know what to do about it!

Ask HN: Dyslexic co-founder any practical tips?
8 points by Kepler-295c  1 day ago   5 comments top 5
trcollinson 1 day ago 0 replies      
I'm dyslexic. Have you noticed this being a problem for your cofounder? With spelling and grammar checkers that are frankly rather brilliant, I haven't had a lot of trouble in years. I still make mistakes (read back on my comments on hn and you'll find examples). I even occasionally make mistakes in important business settings. I generally just explain I am dyslexic and then correct the mistake. It has never caused a problem.

When I was in college (I went to law school) I wrote a lot. I learned two things from this. First, as a dyslexic I can practice spelling and writing just as I practice my coding skills and improve on my skills. Second, if something, like a legal document, matters a lot, have it proof read by a lawyer. Most documents, emails, etc, do not need a massive amount of proof reading. Even non-dylexic people make mistakes when writing!

tarr11 1 day ago 0 replies      
I've found that preferring voice communications is helpful (better that text, slack, email etc)

Also, if they are customer facing, try and have them use templates when possible to minimize the amount of text to write.

If they misspell things, just try to let it slide and focus on the bigger issue.

swtf 1 day ago 0 replies      
I'm dyslexic as hell. I'm pretty sure I can type. Even worse I'm a developer :)
wingerlang 1 day ago 0 replies      
Maybe use text expanders with pre-written snippets. Spell check should be native in the OS no?
video-host 1 day ago 0 replies      
As a non-native speaker, I find Grammarly pretty handy.
Ask HN: What code samples should programmers read?
305 points by _Microft  4 days ago   148 comments top 41
daliwali 4 days ago 10 replies      
Here's an overlooked one: your dependencies.

Every programmer should read the (presumably open source) code they depend on, but almost nobody does it. Some look at documentation, but not everyone even does that. What you may find is that some of the code you depend on is garbage, and may even motivate improvements.

This may be less feasible for giant messes such as most front-end tooling and frameworks that exist today.

mafribe 3 days ago 3 replies      
For those who understand networking: the Mirage TCP/IP networking stack [1] in pure OCaml is a must. It's an object of extreme beauty, and possibly the most eloquent argument for types, types inference and algebraic data types I can think of. The TCP state machine is mostly specified at type level [2], preventing numerous potential bugs in one fell swoop.

Reading this code is probably most enlightening if you have already written networking protocols.

NB: this has nothing to do with OCaml, other comparable languages with ADTs (Scala, Rust, Haskell, F#) would be similarly suitable.

[1] https://github.com/mirage/mirage-tcpip

[2] https://github.com/mirage/mirage-tcpip/blob/master/lib/tcp/s...

elorm 4 days ago 2 replies      
Check out 500 Lines or less https://github.com/aosabook/500lines

I just can't recommend it enough. All the projects are open source, so you can review the source code and still be walked through the code by book. You'd learn why the programmers made certain trade offs and how the applications became better of for it

petercooper 4 days ago 1 reply      
This doesn't entirely match the criteria in your question but I think dipping into the standard library for your language (if it has one) is a good idea. It's not only useful to see what you're using but it can also show you how language experts use the language (which can be useful stylistically) and be an archaelogical exercise in the history of the language and its priorities (particularly true with Ruby's stdlib, I found).
fenomas 4 days ago 5 replies      
I'm not a C person, but I've often heard that the Quake source code is good, practical-not-necessarily-elegant code that's worth emulating.


jonsen 4 days ago 1 reply      
mtreis86 4 days ago 0 replies      
I am learning lisp and was recommended to read "Paradigms of AI Programming" as the examples are all given in lisp.

The later book is "Artificial Intelligence A Modern Approach" which is written with pseudocode examples. The site includes other languages than lisp; python, java, js, scala, and c#.

PAIP lisp code: http://www.norvig.com/paip/README.html

AIAMA code: https://github.com/aimacode

shezi 4 days ago 1 reply      
Following Handmade Hero is always a good idea.


golergka 3 days ago 0 replies      
Fabien Sanglard wrote great reviews of various codebases, including git, Doom 3 and others.


Walkman 3 days ago 0 replies      
The Architecture of Open Source applications: http://aosabook.org/en/index.html

These are very detailed, very well written articles from well-acknowledged developers about their OSS project.

simon_acca 3 days ago 0 replies      
All of the norvig Jupyter notebooks: http://norvig.com/ipython/README.html
nxc18 3 days ago 2 replies      
Really, no one has said Linux yet? This is very surprising, given how often it is put on a pedestal for its excellent design...

Realistically this is because it is in fact a big messy pile of 'at least it works'.

Still, it is worth studying as an example of a work that was architected to support open source contribution from thousands of developers.

franzwong 4 days ago 0 replies      
You should read the code of a open source project that you often use. You might not have the "ah ha" moment when reading something unfamiliar.
jacquesm 3 days ago 1 reply      
Hashlife and anything else implemented by Norvig, he's one of the best programmers that I've had the pleasure of reading code from.

Plenty of tricks to be learned there, as well as fantastic structure.

mpfundstein 4 days ago 1 reply      
ffmpeg source code :-) its beautiful C code and you will learn how to build a maintainable, modular system with just the tools that C gives you.
Animats 3 days ago 0 replies      

Fang is a utility program for UNIVAC 1108 computers, written in 1972. UNIVAC's EXEC 8 had threads and async I/O for user programs, decades before UNIX. The machines were shared-memory multiprocessors. FANG uses those capabilities to parallelize copying jobs. The UNIVAC mainframes had plenty of I/O parallelism and many I/O devices, so this was a significant performance win.

See especially "schprocs". Those are the classic primitives from Dijkstra: P, V, and bounded buffers. That technology predates Go by 40 years. Here's Dijkstra's P function:


Instruction format is

The "TS" instruction is "Test and Set". That's atomic. If the flag is already set, an interrupt occurs and the OS does athread switch. CTS just clears the flag. Later versions of theOS support C$TSQ and C$TSA, where the OS queues waiting testand set operations.

X4 is the "switch list", the local data for the thread.)

[1] https://www.fourmilab.ch/documents/univac/fang/

db48x 4 days ago 1 reply      
A metacircular interpreter for Scheme. You can even watch a lecture where this is presented (https://ocw.mit.edu/courses/electrical-engineering-and-compu... see also part 2).
pjc50 3 days ago 0 replies      
I don't think there's an "every", because not every programmer can read every language and there isn't even a common union of languages that you can universally expect.

In that regard Donald Knuth's work in the fictional assembler MIX for TAOCP is worth reading - it's at one remove from any real system. Knuth's TeX source is also quite unique.

sigjuice 3 days ago 0 replies      
As a Linux user, I find it very useful to set up the source and debug symbol repositories for the distribution that I am running. This way I have a large body of code easily accessible which matches what I am actually running. I usually grep for error/log messages, or examine core dumps or hung/misbehaving programs using gdb.
emodendroket 3 days ago 3 replies      
I don't think there is such a thing. Learning about common algorithms is a good idea but programs aren't novels. People pay a lot of lip service to reading code but practically nobody does it.


Clubber 3 days ago 3 replies      
A half joking response (only half), I would say your own code you wrote a year ago.
kowdermeister 3 days ago 0 replies      
Read something that matters to you, some library or snippet that you use a lot or you depend on it. Context matters a lot in getting motivated to comprehend things. Otherwise you will just browse some random code with little to no connection and lack of understanding how the authors got there.

One source code I look into from time to time is Three.js: https://github.com/mrdoob/three.js/ to discover more details over the documentation.

zachwill 3 days ago 0 replies      
One of the pieces of code I read through that helped me the most: Beautiful Soup. If you're a Python developer, I wholeheartedly recommend you read through it -- although I do think Leonard has removed some of his more disdainful comments from BS2. When I originally read it, I loved how you could really feel how much he hated all the XML/HTML parsing gotchas. I think it's the only time I've laughed out loud reading through code because of humorous comments and TODO notes to self.
hendry 4 days ago 2 replies      
donatj 3 days ago 0 replies      
Golang itself. It's soooo readable and contains so much wisdom.
EternalData 3 days ago 0 replies      
Thanks for bringing this thread of thought to light! Sometimes I look through Stack Overflow not only for solutions to particular problems, but particularly elegant solutions in a proactive manner. I often just browse through profiles of people with tons of karma.
EliRivers 4 days ago 0 replies      
Fast inverse square root as seen in Quake (as mentioned in other comments)


QuotesDante 3 days ago 0 replies      
The D3 source code. Since this is made of around 30 modules, one might start with [d3-quadtree](https://github.com/d3/d3-quadtree).
kybernetikos 4 days ago 0 replies      
The book Beautiful Code has some examples along these lines with interesting commentary too.
evanwolf 3 days ago 0 replies      
I love this. Writers ask the same question. Teaching literature and composition starts with reading the works of greats who game before, learning what made them great, and incorporating their skills into your own tool box.
kruhft 3 days ago 0 replies      
Read the source code to Emacs. It has everything a growing programmer needs: portability, compilers and interpreters, user interface(s), language design, build systems...


taw55 3 days ago 1 reply      
Lugaru Gametick. A succesful indie game written by a highschool student.


kenoyer130 3 days ago 0 replies      

Even if you hate c#/java an amazing book on how to write solid clean code.

oddthink 3 days ago 0 replies      
Whenever I look at the Tcl source code, I'm impressed by how clean it is: https://github.com/tcltk/tcl
notburnt 3 days ago 1 reply      
I remember having a few aha moments when reading through the Redis code.
likelynew 3 days ago 0 replies      
smallpt: Global Illumination in 99 lines of C++: http://www.kevinbeason.com/smallpt/
pyroinferno 3 days ago 0 replies      
I am surprised no one said Linus Torvald's double pointer problem
navyad 2 days ago 0 replies      
find popular github repositories for your tech and explore them for fun !!
rijoja 3 days ago 0 replies      
sox is kinda nice. Read a lot of it ages ago but I would like to revisit it know with my marginally improved math skills.
Why do companies treat their office address like a company secret?
10 points by masor  1 day ago   9 comments top 9
Gustomaximus 13 hours ago 0 replies      
A business Im involved in does online surveys. As with anything there can be a mistake or misunderstanding over an account credit or voucher type thing. Some people can get very angry over this rather than lodge a report with our member services team. We have seen people call into offices and give death threats over $2. And while you can find our office address online, we keep it a little hidden and don't encourage the location or phone number to be public. So basically for us its to keep potential lunatics away.
huehehue 9 hours ago 0 replies      
My current company's CEO is a bit of an icon in the startup world, and his fans can be...intense. If we leave the office door unlocked during work hours, people can (and have) just waltzed in hoping to meet him. People also send all sorts of weird gifts.

Since we were basically working out of a house for the longest time, whoever was on hand would have to deal with the unwanted guest. If you're alone in the office and some big dude comes in saying "Well I won't leave until I meet your founder!", that can be scary.

As Gustomaximus puts it, it is to keep potential lunatics away.

richardknop 23 hours ago 0 replies      
It depends. But one of the reasons I can think of is if it is an early stage startup or small company. They might be using co-working space like WeWork or only have a virtual office and couple of employees working remotely/from home.

In such case they want to appear bigger than they are and if you could google their address and find out it's a virtual office with 200 companies registered there you might decide to look for a bigger / more established company instead of going with them.

But even if your company's address is just a virtual office, you should list it visibly on your website in my opinion. It doesn't look good when you appear to be hiding it. There's nothing wrong with small business or new startup not having a proper office from beginning.

shubhamjain 1 day ago 0 replies      
A comical thing about many "cutting-edge" SaaS startups: no one wants to do the website; no one owns it. I have seen it many times: marketing people imploring the programmers to push a little change to the website, only to find that no one is available for the task.

Logically, it makes sense as websites usually get updated only once in a while and it would foolish to dedicate a resource to it. But, it also adds a great difficulty in building a tiny thing, even if something like a contact page.

I guess big companies have more organised processes and teams to handle this. But, in startups, everyone is already working on the core product and everything else seems like a distraction.

greenyoda 1 day ago 0 replies      
It's possible that if a company is very small, it works out of a co-working space or has all of its employees working remotely in different locations. They may be hiding this to make it appear to customers that they're bigger than they really are.

But I agree that not telling prospective employees where they're located will deter people from applying. For example, two places within a few miles of each other in NYC can have drastically different commutes (time, comfort and/or safety), so there's no way I'd consider applying for a job if I didn't know the company's location.

CyberFonic 1 day ago 0 replies      
Great question ! I have often wondered that too.

I can understand small companies, trying to cover up the fact that they are still operating out of their garage or spare room. But when large corporations do it, I am just flummoxed. For example if you look up Apple in the Sydney (AU) whitepages, there is no address given just a free call number. I just checked, Google now show their address, but in the past they didn't either.

mchannon 1 day ago 0 replies      
I don't think it's sinister, I just think it's looked upon as extra work, with no obvious upside.

For would-be competitors who want to send in spies, it's easier to move on to other companies that publish addresses.

In the big 5 companies, the more hush-hush the R&D activities, the harder the particular site is to find.

mowenz 1 day ago 0 replies      
Can you give examples? Afaik most publish their address?
aslkdjaslkdj 1 day ago 0 replies      
To prevent crazy people from doing something crazy. These buildings aren't open to the public. Outside of your employment use case (in that case just ask the recruiter for the building location; I've never had a problem with that), the people trying to show up to an office building are probably trying to complain or make a scene.
Could Our Brain Be a Decentralized Blockchain System?
3 points by utkarshs12  21 hours ago   4 comments top 2
BjoernKW 1 hour ago 1 reply      
Short answer: No.

The blockchain essentially is a ledger, an accounting system. In order for that to work in a decentralised manner it's vital that each node have a complete copy of the data store and its history.

The brain on the other hand isn't an accounting system. It's decentralised, too but its nodes - the neurons - serve a very different purpose than Blockchain nodes. They only need to 'know' about their immediate environment, i.e. the neurons around them. Therefore not only doesn't each neuron need to have a complete copy of the data available but it would rather be tremendously inefficient to do so.

gus_massa 20 hours ago 1 reply      

The main idea of the blockchain is that each block has a hash of the previous block that has a hash of the previous block that has a hash of the previous block ... so you get a chain of blocks.

Also, each mining node has the complete information of the previous block and all the new transactions, so it can calculate the hash of the previous block and a hash of the new data and create the new block.

Neurons have very few data available. They can sum, rest and make a small amount of delay and accumulation, but each neuron doesn't know the state of the whole brain and has no computational power to make a hash of it anyway.

Ask HN: Books you wish you had read earlier?
610 points by jmstfv  5 days ago   266 comments top 106
smaddox 5 days ago 2 replies      

"How to Win Friends and Influence People" by Dale Carnegie, because it changed my understanding of people for the better.

"Surely You're Joking, Mr. Feynman!" by Richard Feynman, because it gave me a model for how to enjoy life.

"Models" by Mark Manson, because it helped shape my understanding of heterosexual relationships.

"An Introduction to General Systems Thinking" by Gerald Weinberg, because it illuminates the general laws underlying all systems.


"Stranger in a Strange Land" by Robert A Heinlein, because it showed me a philosophy and "spirituality", for lack of a better word, that I could agree with.

"The Fountainhead" and "Atlas Shrugged" by Ayn Rand, because they showed me how human systems break, and they provided human models for how to see and live in, through, and past those broken systems.

"Harry Potter and the Methods of Rationality" by Eliezer Yudkowsky, because it set the bar (high) for all future fiction, especially when it comes to the insightful portrayal of the struggle between good and evil.

Houshalter 5 days ago 3 replies      
Rationality: from AI to Zombies really changed my way of thinking in many ways. It's very hard to describe it or sell it in a few sentences. Partly because it covers so many different things. And partly because I read it so long ago and have already absorbed many of the good ideas in it. They no longer seem exciting and new, and just feel obvious. But they certainly weren't when I first read it.

I constantly see places where an idea from the book is relevant and I want to make people read a chapter of it. Examples include insights into evolution, artificial intelligence, morality, and philosophy. There's a short section on how people tend to argue about the definitions of words and how unproductive this is, that I always find relevant. There's a lot of discussion on various human biases and how they affect our thinking. My favorite is hindsight bias, where people overestimate how obvious events were after they know the outcome. Or the planning fallacy, which explains why so many big projects fail or go over budget.

The author's writing style is somewhat polarizing. Some people love it and some people hate it, with fewer in between. He definitely has a lot of controversial ideas. Although in the 10 years since he started writing, a lot of his controversial opinions on AI have gone mainstream and become a lot more accepted than they were back then.

nindalf 5 days ago 2 replies      
Sapiens by Yuval Noah Harari. It gave me a good understanding of where we, as a species, came from. What did we do, why did we spread across the planet, how did we replace other hominids? What I really appreciated was his ability to explain some of the underpinnings of society like religion, nation states and currency with a relatively simple idea. Afterwards I felt like "damn that's so simple, I should have thought of that!" When you think that, you know you're on to something good.

On Writing by Stephen King. This a biography masquerading as a book on writing advice... Or its the other way around. Whichever it is, I think it's a great book for any aspiring writer to read. King explains the basics on how to get started, how to persevere and through his experiences, how not to handle success. Full of honesty and simple, effective advice.

Chasing the Scream by Johann Hari. Most people agree that the War on Drugs is lost and has been lost for decades now. But why did we fight it in the first place? Why do some continue to believe it's the correct approach? How has it distorted outcomes in society and how can we recognise and prevent such grotesque policies in the future? This book offers some of those answers.

Only if you're Indian - India After Gandhi by Ramachandra Guha. Sadly almost every Indian I've met isn't well informed about anything that happened in India after 1947, the year India became independent. History stops there because that's the final page of high school history textbooks. An uninformed electorate leads to uninformed policy, like "encouraging" the use of a single language throughout the country. If I were dictator, I'd require every Indian to read this book.

cocktailpeanuts 5 days ago 2 replies      
The Master Switch : This really puts a lot of things into context, especially if you're in tech industry. It's basically a history of the entire Information Technology, and it's fascinating how same things happen over and over again, pendulums swing back and forth over and over again, and people keep making same mistakes over and over again. Also you can see the larger picture of why some large tech companies make the decisions they make, and how to successfully compete if you are into that.

You will become a pessimist for a while after reading this, just because it feels like there's no meaning in all this since everything repeats itself and nothing is forever, but when you recover from it you'll find yourself much more insightful about the industry and can make better decisions.

kristiandupont 5 days ago 0 replies      

I love all the answers in here but please, please answer with more than just a title! I want to know why I should care about a book -- sell it to me, don't just throw it out there and ask me to do the work.


gkya 5 days ago 5 replies      
The bible, cover to cover: if reading western literature or philosophy produced in whatever year A.D., the bible is required reading for comprehending many the references and various rhetorical modes. I'm irreligious from a muslim background myself but I'm reading it now. Same goes for the qoran, my family is not a practicing muslim family and thus I never read it, but it's a part of the canon, must be read. I'm not sure if I would like to have read these earlier tho, as now I have the consciousness to not be fooled by the stuff in these books.

Karen Armstrong's A Short History of Myth is a very nice guide into mythology and what that and religion are. It's like a vaccine for any sort of fundamentalism or bigotry, if read with some accompanying knowledge of mythological traditions.

vizvamitra 5 days ago 2 replies      
"The Design of Everyday Things" by Donald Norman.

Technically this book is about how humans interact with things, but actually it covers a lot more topics that one can think: how humans act, err, how they make descisions, how memory works, what are the responsibilities of conscious/subconscious. Also you'll start to dislike doors, kitchen stoves and their disigners)

gmunu 5 days ago 1 reply      
The Happiness Hypothesis by Jonathan Haidt.

You hear 'ancient wisdom' on how to lead the good life all the time. These ancient aphorisms came from a time before the scientific method and the idea of testing your hypotheses. Tradition has acted a sort of pre-conscious filter on the advice we get, so we can expect it to hold some value. But now, we can do better.

Haidt is a psychologist who read a large collection of the ancient texts of Western and Eastern religion and philosophy, highlighting all the 'psychological' statements. He organized a list of 'happiness hypotheses' from the ancients and then looked at the modern scientific literature to see if they hold water.

What he finds is they were often partially right, but that we know more. By the end of the book, you have some concrete suggestions on how to lead a happier life and you'll know to the studies that will convince you they work.

Haidt writes with that pop science long windedness that these books always have. Within that structure, he's an entertaining writer so I didn't mind.

SirLJ 5 days ago 3 replies      
I wish as a kid I had access to the following:

"More Money Than God: Hedge Funds and the Making of a New Elite" https://www.amazon.com/More-Money-Than-God-Relations/dp/0143...

Market Wizards, Updated: Interviews With Top Traders https://www.amazon.com/Market-Wizards-Updated-Interviews-Tra...

The New Market Wizards: Conversations with America's Top Traders https://www.amazon.com/New-Market-Wizards-Conversations-Amer...

Hedge Fund Market Wizards: How Winning Traders Win https://www.amazon.com/Hedge-Fund-Market-Wizards-Winning/dp/...

tudorw 5 days ago 1 reply      
Man's Search for Meaning (published under a different title in 1959: From Death-Camp to Existentialism) by Viktor Frankl who survived the concentration camps to go on to develop logotherapy and existential analysis (considered the third Viennese School of Psychotherapy). "lack of meaning is the paramount existential stress. To him, existential neurosis is synonymous with a crisis of meaninglessness", an interesting read, it does not focus on the horrors of the event, instead recognising the human capacity to overcome and rise above.
bor0 5 days ago 1 reply      
"How to Prove It" by D. Velleman. Introduces logical reasoning, set theory, functions, relations, and proofs. It is the base for understanding any mathematical subject.
abalashov 4 days ago 1 reply      
I wish I had read Real World Divorce, much of which can be found on realworlddivorce.com. It's notable for the fact that Philip Greenspun is a major contributor to it, which I found most surprising and intriguing.

I don't want to duplicate a lot of text, so I'll link to my Amazon review of it:


TL;DR it's the only bit of literature I've found that's got the real talk, and in data-and-comparison driven ways hackers will appreciate.

Yeah, obviously I'm going through a divorce, but I really think this book should be required reading for anyone before they get married in the US. I don't say that lightly or confer that kind of veneration unto books at the drop of a hat.

beagle3 5 days ago 2 replies      

The origin of consciousness in the breakdown of the bicameral mind, / Julian Jaynes. Hard to tell if crazy or genius, but well worth a read. Read at 38, wish I had read this at 20 or so. Most of us take our inner voice for granted, but should we really? And what if there was evidence supporting the idea that there's another inner voice, but our modern upbringing suppresses it (but it does reappear with some illnesses, under duress, etc)?


Different Seasons / Stephen King. A collection of four stories, NOT your usuall King horror genre; one of which became the movie "Stand By Me". another became "The Shawshank Redemption", the third became "An Apt Pupil", and the fourth will likely never become a movie. All are excellent. I actually read it at 16, which was the right time, but I'll list it here anyway; if you've seen the movies and liked them, it's worth reading - the stories are (a) much more detailed than the movies, in a good way, and (b) related in small ways that make them into a bigger whole than the individual stories.

Management (software/hardware oriented):

Peopleware / Demarco & Lister - read after I was already managing dozens of people. Wish I had read it long before. This book is basically a list of observations (with some supporting evidence and conclusion) about what works and what doesn't when running a software team. Well written, and insightful.

The mythical man month / Fred Brooks - wish I had read this before first working in a team larger than 2 people. Written ages ago, just as true today; A tour-de-force of the idea that "man month" is a unit of cost, not a unit of productivity.

faragon 5 days ago 1 reply      
Eye-opening/shocking books:

"Science et Mthode" (Henri Poincar, 1908)

"The Conquest of Happiness" (Bertrand Russell, 1930)

"The Revolt of the Masses" (Jos Ortega y Gasset, 1930)

"Brave New World" (Aldous Huxley, 1932)

"Reason" (Isaac Asimov, 1941, short story)

"Animal Farm" (George Orwell, 1945)

"Nineteen Eighty-Four" (George Orwell, 1949)

"Starship Troopers" (Robert A. Heinlein, 1959)

"The Gods Themselves" (Isaac Asimov, 1972)

"Time Enough for Love" (Robert A. Heinlein, 1973)

tripu 20 hours ago 1 reply      
On Liberty (John Stuart Mill) for political enlightenment and an impeccable defence of [classical!] liberalism. It's packed with simple but enormously powerful ideas that are also timeless, thus applicable today and to so many aspects of life.

Don Quixote (Cervantes): unanimously considered the best work of fiction in the Spanish-speaking world and on many lists, even #1 of world literature, ever (!). Often overlooked (at least in Spain) by young folks as it is long, the language is archaic, and its themes appear quaint and silly today at first sight. But there's a reason it has been praised for centuries. It's funny and tender. Themes are also modern, and Cervantes' style is playful and innovative, making use of devices such as meta-references, alternative pasts, removal of the fourth wall, etc. I'm not sure how much non-native audiences can enjoy translations, though.

The Lord of the Rings (Tolkien) for the original epic and touching fantasy. (I know many people devour it in their teens, or in their early youth But I read it as an adult; quite late. Mainly because it seemed to be the only difficult book that many of my friends bothered to read, and that predisposed me negatively towards it. Also, my family hadn't read it, and there was no copy of it in our house.)

Brief History of Time (Stephen Hawking): mind-boggling introduction to (astro-)physics, modern cosmogony, etc.

CamperBob2 5 days ago 0 replies      
Borges: Collected Fictions (https://www.amazon.com/Collected-Fictions-Jorge-Luis-Borges/...)

IMO you won't really understand the nature and limitations of fiction until you've read JLB. His work won't change your life, as such, but it will divide it into two parts: the part that took place before you read him, and the part that comes after. You'll always be conscious of that division.

chegra 5 days ago 2 replies      
Mini Habits - It gave me a new perspective of how to go about making changes in my life, that aren't so burdensome.

I have developed several habits:

a. Writing a Gratitude Journal

b. Going to Gym in the morning

c. Programming in the morning

d. Reading in the morning

I copied some of my highlights here:


chadcmulligan 5 days ago 0 replies      
The Life-Changing Magic of Tidying Up: The Japanese Art of Decluttering and Organizing https://smile.amazon.com/gp/product/B00KK0PICK/ref=kinw_myk_...

It's about tidying up, but also about making your living space harmonious without clutter. It's not one of those get a box and put your pencils in it and then label it.

mindcrime 5 days ago 0 replies      
The Four Steps To The Epiphany by Steve Blank. I've learned more about "what goes into building a startup" from reading this book than any other book I've read.

The Fountainhead by Ayn Rand. One of the most inspirational stories I've ever read. A strong reminder to remain true to yourself in the face of all sorts of challenges and adversity.

Mastering The Complex Sale by Jeff Thull. I don't claim to be a great, or even good, salesman. But if I ever become any good at selling, I expect I'll credit this book for a lot of that. I really like Thull's approach with is "always be leaving" mantra and focus on diagnosis as opposed to "get the sale at any cost".

The Challenger Sale by Brent Adamson and Matthew Dixon. Like Thull, these guys deviate from a lot of the standard sales wisdom of the past few decades and promote a different approach. And like Thull, a core element is realizing that your customer aren't necessarily fully equipped to diagnose their own problems and / or aren't necessarily aware of the range of possible solutions. These guys challenge you to, well, challenge, your customers pre-existing mindsets in the name of helping them create more value.

The Discipline of Market Leaders by Fred Wiersema and Michael Treacy. A good explanation of how there are other vectors for competition besides just price, or product attributes. Understanding the ideas in this book will (probably) lead you to understand why there may be room for your company even in what appears to be an already crowded market - you just have to choose a different market segment and compete on a different vector.

How to Measure Anything by Douglas Hubbard. It's pretty much what the title says. This is powerful stuff. Explains how to measure "things" that - at first blush - seem impossible (or really hard) to measure. Take something seemingly abstract like "morale". Hubbard shows how to use nth order effects, calibrated probability estimates, and monte carlo simulations, to construct rigorous models around the impact of tweaking such "immeasurable" metrics. The money quote "If it matters, it affects something. If it affects something, the something can be measured" (slightly paraphrased from memory).

I wish I'd read each of these much earlier. Each has influenced me, but I'd love to have been working of some of these ideas even longer.

lowpro 5 days ago 1 reply      
Mans Search for Meaning by Victor Frankl, especially good if you're feeling down or disallusioned.
williamstein 5 days ago 0 replies      
"Crossing the Chasm: Marketing and Selling High-Tech Products to Mainstream Customers" by Geoffrey A. Moore and also his recent "Zone to win". His books explain some of the "deeper structure" to tech business, and is one of the few business-related books I've read that has any depth. By "depth", I mean in the sense that I'm used to from research mathematics (I'm a number theorist by training), where you learn something about a problem that lets you think about problems in a more detailed way.
nscalf 5 days ago 1 reply      
The Art of Learning by Joshua Waitzkin. I was definitely in the right place to take in the topic, but it was, more or less, a book on how you can be "good" without much effort, but to be great or the best, it takes a lot of hard work and time. This book helped me learn that lesson.

On top of that, some of Tim Ferriss' stuff on accelerated learning. Learn how to learn first, then learn everything else.

zem 5 days ago 2 replies      
i discovered 'the phantom tollbooth' in grad school (for some reason, it was pretty much unknown in india when i was growing up). i'm pretty sure kid me would have loved it even more than adult me did.
huac 5 days ago 3 replies      
A non-tech, non-business recommendation: "The Unbearable Lightness of Being" by Milan Kundera. A beautiful story, told with equal parts philosophy, psychology, and humor, and honestly heartbreakingly beautiful.
WillPostForFood 5 days ago 0 replies      
Getting Real - got me out of the corporate grindSICP - got me out of the OO grind

Each one had a significant positive impact on my life. And both a free online!



JSeymourATL 3 days ago 0 replies      
How to Fail at Almost Everything and Still Win Big by Scott Adams.

Turns out the creator of Dilbert was at one time a mid-senior level manager in Corporate America, who attempted several failed entrepreneurial ventures over the years. He's also a brilliant writer. Totally hooked by Chapter 3: Passion is Bullshit > http://www.goodreads.com/book/show/17859574-how-to-fail-at-a...

tjalfi 5 days ago 2 replies      

 Surely You're Joking, Mr. Feynman! - Richard Feynman What Do You Care What Other People Think? - Richard Feynman Crime and Guilt: Stories - Ferdinand von Schirach

 The Master and Margarita - Mikhail Bulgakov

 Bulldog: A Compiler for VLIW Architectures - John Ellis

paraschopra 5 days ago 0 replies      
_The Beginning of Infinity_ changed my worldview from thinking progress is slowing down or problems in the world are overpowering to a more hopeful one where problems always be there for humans to solve, and that through human activity we can keep making progress. It also gave hope that one day in future, we might be able to clearly see that good, bad, evil, love, beauty might be fundamental aspects of universe, just like gravity, atoms, and radioactivity is. It also walks through philosophy of science (v/s pseduo-science). All in all, I wish I had read it earlier.

_Feeling Good_ because of the tools it contains to battle self-defeating feelings that lead bouts of sadness or depression. I wish everyone would read that book so that they can build mental immunity against circular, depressing thoughts.

satwikhebbar 5 days ago 0 replies      
"The Self-aware Universe" by Amit Goswami. Opened my eyes to a new way of looking at the world around us, and finding new ways to react to events that affect us. Wish I'd read this when I was much younger - before I had decided with a high level of confidence that I am completely in control of everything I do, all that happens to me and how I react to events. Seeing yourself as a minuscule part of a whole you perhaps will never fathom, allows you to simply focus on doing your best when you can and not get overly possessed with results. One of the many mystic-physics books that were very much in fashion for a while, but the one that stuck to my consciousness the most.
kabdib 5 days ago 0 replies      
_The Art of Electronics_. As a software guy who sometimes is involved in embedded systems, having a good understanding of what's going on at the resistor/capacitor/transistor level would have helped a lot. I did a bunch of hobby electronics as a teenager, but never had circuit theory. I knew a lot about digital design, but not the analog stuff that the whole world ultimately rests on.

So now, when I hear a switching power supply whine in protest, I will think of it as the squeals of pain of the engineers whose life I turned into a living hell because of my lack of appreciation for P = IV. Im truly sorry. I wasnt thinking. (And this is just the first chapter of that book).

queeerkopf 5 days ago 0 replies      
To Have or To Be? by Erich Fromm.

I did read it fairly early and it had an quite an impact on my life and thinking. It put into words a lot of my discomfort with a life focused on materialistic success. And it was inspiring seeing an intelectual combining so many of the thoughts and topics he developed during his lifetime into one coherent and approachable book.

Joeri 5 days ago 1 reply      
The left hand of darkness, by Ursula Le Guin.

I found it by working my way through the list of joint nebula and hugo award winners (which is a really fun project, because all of them are amazing books). It is my favorite sci-fi book. It changes the way you look at gender, especially if you haven't questioned the concept much before.

tmaly 5 days ago 1 reply      
4 Hour Work Week, it gave me some perspective on the 9-5 job I wish I had given more thought to earlier in my life when I had more time.

80/20 principle, while mentioned in the 4 hour work week, it really has a lot more to offer in the book. How you should go about leveraging your time. There was a real gem in there about how books are really the best way to acquire knowledge and a great way to approach reading in the university.

There was a speed readying and studying book I came across from a friend that owns a book store that really helped me. I wish I had that book before I entered high school. I can never recall the name, but I will try to find it.

henrik_w 5 days ago 0 replies      
How To Win Friends And Influence People by Dale Carnegie - a timeless classic for people skills, useful in almost all circumstances.
adekok 5 days ago 0 replies      
The Gift of Fear (Gavin Debecker) - how to deal with bad people

The War against Women (Marilyn French) - the underlying premise is wrong, but reading it is a good way to learn how to deal with semi-rational, but insane theses. And yes, I can defend this position with quotes / paraphrases from the book, with rational explanations as to why it's insane

How the Police generate false confessions (James Trainum) - former cop explains why harsh interrogation techniques are counter-productive, and how to defend yourself

Get the Truth (Philip Houston et all) - how to tell when people are lying, via simple techniques you can remember

dinosaurs 4 days ago 0 replies      
On the Road by Jack Kerouac.

I read it at 18 and I wish I had read it way earlier. It taught me to be mad, to live life, to get out and see the world. But looking back at it, it also taught me how to be responsible and how to not to be a jerk.

It, above all, showed me what beautiful writing is.

rwieruch 5 days ago 1 reply      
alexilliamson 4 days ago 2 replies      
"The Silk Roads: A New History of the World" By Peter Frankopan. This book tackles essentially all of human history, tying together the world's major cultural shifts with the socioeconomic forces that brought them to pass. For readers who have implicitly come to believe that the center of the world has always been Western Europe (I had), this book will greatly shift your perspective (Eastward). I've never learned so much from a book, and damn is it entertainingly written.

"Getting Things Done" by David Allen. I'm sure everyone here is familiar with bits and pieces of GTD methodology, but I encourage you to check out the full text. There are a lot of great ideas in there there that I didn't find reading online about GTD. I have been a serious GTD user for more than a year now, and I feel amazingly more in control of my life. Everything I've done in that time - from planning my wedding, to projects at work, to completely organizing my house - has gone smoother than I can remember projects going ever before.

widowlark 5 days ago 1 reply      
Metamagical Themas by Douglas Hofstadter. This book has taught me more about thinking differently than any other.
nihonde 5 days ago 0 replies      
Eric Hoffer, The True Believer. You will see applications for the principles in this book in all aspects of society and politics. Easy to read and unassailable insight into what makes people join a common cause.
ssohi 5 days ago 1 reply      
Fooled By Randomness & The Black Swan by Taleb
Schwolop 4 days ago 0 replies      
How to Become CEO: The Rules for Rising to the Top of Any Organization by Jeffrey J Fox

I found this book in a library's junk pile, evidently unread. It has one of those bad 80s covers that suggest it'll be terrible, but to my great surprise, it's great! It's 80 or so one page missives/dictums/edicts that'll take barely half an hour to read through - I re-read it every time I have a job interview coming up or a some kind of major life choice. The author's tone is abrasively direct; this is how it is, not how it should be. And the advice isn't just for wannabe CEOs, it's accessible and attainable for everyone.

tedmiston 5 days ago 1 reply      
A popular recommendation here, but Getting Things Done by David Allen.
joeclark77 2 days ago 0 replies      
"Shop Class as Soulcraft", by Matthew Crawford

It discusses the intrinsic characteristics of work that lead to satisfaction, growth, mastery, and ultimately happiness. The author is a PhD, worked at a think tank, and quit the white-collar life to go work on motorcycles. He discusses how white-collar work has been hollowed out, transforming "professionals" into "clerks", why so many of us "knowledge workers" feel unsatisfied with our work. The book has helped me figure out how to change my work to be more intrinsically rewarding, and as an IT developer whose technology affects other people's work, it also helps me think more about how to make the end user's life better.

Another great book along these lines is Joanne Ciulla's (2000) "The Working Life", which is a bit more academic and has less motorcycles but is nevertheless very readable.

davidgh 5 days ago 0 replies      
How We Got to Now, Steven Johnson. Walks you through a half dozen foundational inventions and the process through which they came to be. Fascinating to see what the inventors were trying to solve vs. how the world ended up applying their technology.

Unbroken, Laura Hillenbrand. If you haven't read the book don't judge it by the (awful) movie.

The Liberators: My Life in the Soviet Army. Really opens your eyes to the problems and realities of communism. I love the author's dry sense of humor as he witnesses the absurdity of many of the things he encountered.

Sniper on the Eastern Front, Albrecht Wacker. A view of WWII through the eyes of a German sniper.

Auschwitz: A Doctor's Eyewitness Account, Miklos Nyiszli. A view of the holocaust through the eyes of a Jewish doctor in the Auschwitz concentration camp.

edpichler 5 days ago 0 replies      
On the shortness of life, by Seneca.
ozovehe 5 days ago 0 replies      
Animal farm by George Orwell: a revelation of the beginning and end of revolution and 'change'.Jewish wisdom for business success.Call of the wild by Jack London: it shows how possible it is to adapt in order to benefit maximally from change -- using a dog's (Buck) life.
ebcode 4 days ago 0 replies      
"Out of the Crisis" by W. Edwards Deming. The author was one of a handful of people who helped the Japanese apply methods of statistical control to their manufacturing processes, which in turn helped them to become an economic superpower after their country's occupation by the Allies. In the book the author takes a deep look at the problems of management in the United States, and provides a list of reforms that would lead businesses "out of the crisis". I only recently learned of W. Edwards Deming, and I wish that I had known about him much earlier.
lorenzorhoades 4 days ago 0 replies      
I always found this question pretty impossible to answer. There are so many books that i find myself wanting to recommend, and the list soon becomes unmanageable. So, instead i'm going to provide a different resource - Patrick collisons whole library. He color coats the books he thinks are great, and lists hundreds of books. https://patrickcollison.com/bookshelf
galfarragem 5 days ago 1 reply      
The book that I should have read (and re-read) earlier:

No more Mr. Nice Guy -- Robert Glover

miqkt 5 days ago 0 replies      
Rollo Tomassi The Rational Male

If my younger self had read this, I think my course of life would be very much different than it is right now. Just a caution that it might come off as misogynistic ramblings for some readers.

architek1 1 day ago 0 replies      
Nature of Order Volumes 1-4, Christoper Alexander. <30 yrs old, as I believe I would be able to understand the organization of life and how to make better art. Even though I'm only on volume 1, as soon as I started it I wish I would've read this sooner.

I would add more but I think these volumes will keep you busy for awhile ;)

perfmode 5 days ago 1 reply      
A People's History of the United States
habosa 4 days ago 0 replies      
Don Quixote. Specifically the translation by Edith Grossman.

In high school I was assigned this book but I didn't read it all, it seemed like a waste of time to read 1000+ pages about a silly knight.

A few years ago I got into reading a lot of fiction translated from Spanish and Don Quixote got back on my radar so I decided to give it another try. I was blown away. It's astounding that a book from 500 years ago is still so funny and engaging today. Grossman's translation makes the book accessible and very enjoyable. If you didn't know the history you'd believe it had been published in the last few decades.

I recommend this because it's the best example of how literature can be time travel. When I smile at one of the adventures in the book I know that I'm sharing an experience with readers across centuries. There's almost no other way to get that feeling.

jxub 5 days ago 0 replies      
Think and Grow Rich. Amazing, though maybe simplistic, insights.
gingerjoos 4 days ago 0 replies      
The Human Zoo - Desmond Morris ( https://www.goodreads.com/book/show/333063.The_Human_Zoo )

Morris uses his background as a zoologist to examine human beings as a regular animal; many books have come out of this approach. In this one he draws parallels between the city-dwelling human and the caged animal. This sort of perspective gives you self-awareness about your own tribalism and how we as a species deal with the opposing forces of individuality and longing to belong to a group. Also some ideas on the urban-rural divide that has consequences that leave people on either side puzzled (Brexit, Trump etc.)

Razengan 5 days ago 0 replies      
Below The Root [0], by Zilpha Keatley Snyder.

A highly imaginative, original, and underrated, world setting.

Also had the distinction of having a sequel in the form of a video game, with the game's story written by the book author herself. [1]

The game (for the PC, Apple II and Commodore 64) was way ahead of its time in 1984: [2] and I only just heard of it and the books last month! It definitely needs more recognition.

[0] https://en.m.wikipedia.org/wiki/Green_Sky_Trilogy

[1] http://blog.stahlmandesign.com/below-the-root-a-story-a-comp...

[2] https://www.youtube.com/watch?v=xdUBefQ1cT4

xparadigm 5 days ago 0 replies      
A Short History of Nearly Everything -- Bill Bryson
real-hacker 5 days ago 1 reply      
Books that are mentioned multiple times in this thread:The master switch; Sapiens/Homo Deus; How to Win Friends and Influence People; The animal farm; The lean startup; The Bible.

Ctrl+F these names in this page for rationale.

Is there an "awesome books" repo on Github? I wonder.

xaedes 5 days ago 0 replies      
"The Hero with a Thousand Faces" from Joseph Campbell.

It opened my mind to understand metaphors and analogies in literature. It allowed me to peek under the surface of text. Seriously, every written piece I read after that was different for me than before.

It also gave me more insight in the human mind and psyche.

Being able to read and understand more literature also gave me more perspectives and deeper understanding of the world and place of mankind in it.

Some other nice reads:

"The Way of Zen" - Alan Watts

"The Book" (On the Taboo Against Knowing Who You Are) - Alan Watts

"Demian" - Hermann Hesse; but I wouldn't want to read it earlier. I think I read at the exact best time for me (in my late 20s).

CodyReichert 5 days ago 0 replies      
1) Superintelligence. This is a really great read about the implications of AI, or general intelligence. It's really intriguing and brings up so many scenarios I've never thought about. Anyone interested in AI should definitely read this.

Similarly, On Intelligence is an absolutely brilliant book on what 'intelligence' is, how it works, and how to define it.

2) Hooked. Although it's very formulaic, Hooked provides a lot of good ideas and approaches on building a product.

3) REWORK. If you're a fan of 37 Signals and/or DHH, this is a succinct and enjoyable read about their principles on building and running a business.

Currently I'm reading SmartCuts and The Everything Store - both of which are great so far.

arjmandi 4 days ago 1 reply      
the hard thing about hard things(Ben Horowitz): This book is mostly recommended for managers but I found it very useful to adjust my estimations about life. Also, you will learn about silicon valley history and it's dynamics.

The fifth discipline (Peter Senge): This book is one of the systems thinking references and it helped me to learn more about hidden dynamics in the world around me. I truly wish I've read this when I was junior in college.

deepnet 5 days ago 0 replies      
"From Bacteria to Bach the evolution of minds" by Daniel Dennet.

Should be called How Minds Evolve as Heirarchies of Darwinian Turing Machines ( analagously to Deep Neural Nets (Dennet cites Geoff Hinton and Edinburgh's Andy Clarke).

"working computer models have been developed that can do a good job identifying handwrittenscribbled, reallydigits, involving a cascade of layers in which the higher layers make Bayesian predictions about what the next layer down in the system will see next; when the predictions prove false, they then generate error signals in response that lead to Bayesian revisions, which are then fed back down toward the input again and again, until the system settles on an identification (Hinton 2007). Practice makes perfect, and over time these systems get better and better at the job, the same way we doonly better" p.178 [1]

"Hierarchical, Bayesian predictive coding is a method for generating affordances galore: we expect solid objects to have backs that will come into view as we walk around them; we expect doors to open, stairs to afford climbing, and cups to hold liquid. These and all manner of other anticipations fall out of a network that doesnt sit passively waiting to be informed but constantly makes probabilistic guesses about what it is about to receive in the way of input from the level below it, based on what it has just received, and then treating feedback about the errors in its guesses as the chief source of new information, as a way to adjust its prior expectations for the next round of guessing."

Which echoes Richard Gregory's concept of vision (or perception) as a hypothesis continually tested against input.

This is Paradigm shifting; weltanschauung shattering stuff. Dennet very clearly lays out a methodology for how all aspects of minds can evolve using heirarchical compositions of wetware robots or :

"Si, abbiamo un anima. Ma fatta di tanti piccoli robot!(Yes, we have a soul, but its made of lots of tiny robots!)" p.24 [1]

[1] https://www.penguin.co.uk/books/253900/from-bacteria-to-bach...

balladeer 4 days ago 0 replies      
Anna Karenina, A Suitable Boy, and the like. Excellent books but after college it's been difficult to start and keep at them in a acceptable period of time given the time (or lack of it) is an issue now. I also wanted to read Ulysses. I am stuck around the ~20% of Dostoyevsky's Idiot since a long time. Off late I've had better success with shortner ones.

For me the reason is simple - it's just the daunting number of pages and it is a shame that I have not read/finished these books.

d0mine 4 days ago 0 replies      
"A Mind For Numbers: How to Excel at Math and Science" by Oakley http://barbaraoakley.com/books/a-mind-for-numbers/

Despite the title it is useful for learning how to learn in general (not just math). Simple techniques supported by the research. I wish I didn't had to reinvent them in high school, college.

vecter 5 days ago 0 replies      
How To Be A 3% Man by Corey Wayne [0]

I'm 30 now. I wish I had read this when I was 20. It would've made dating in my 20s so much easier. I came across it last year and it's probably the single most important book I'll ever read in my entire life, for the sole reason that understanding women will allow me to have a successful marriage one day. I cannot recommend this enough.

[0] Free online: https://www.scribd.com/doc/33421576/How-To-Be-A-3-Man

Amogha_IO 5 days ago 3 replies      
There are some books I keep coming back to when I am "feeling lost and/or hopeless", when my "back is up against the wall and/or feel cornered", when I feel like I have "hit rock bottom" or I just need to "escape reality"... This list contains books I have read/listened to more than a couple times:

!For inspiration:! 1. Loosing my virginity (Richard Branson)- Richard Branson's Autobiography. From student magazine to Virgin to crazy ballooning adventures and space! I keep coming back to this when I feel like I need a morale boost. There isn't an audible version for this book, but there is a summary-type version on Audible "Screw it, Let's do it"- does a good job curating the exciting parts.

 2. The Everything Store (Brad Stone) 
-AMAZON and the man leading the massive team behind it. Jeff Bezos is quite easily one of the most important and influential people in the world. His relentless pursuit to build Amazon (& it's various products) amid constant setbacks, losses and naysayers... I personally use Amazon and their products every day. It's a really interesting view of how things are run backstage.

 3. Steve Jobs (Walter Isaacson) 
- One of the most popular books in the Valley. Almost all startup founders I have met has read this. They usually have a very polarized view of Jobs after reading this. Take the good stuff and leave out the bad/crazy. Jobs was a very polarizing person and so is his biography...This is a very long book. "The second Coming of Steve Jobs" by Alan Deutschman is another really good book and a much shorter read and not super-polarizing (leaves out some of the crazy stuff from early life). Other notable Steve Jobs books I have read & highly recommend: Becoming Steve Jobs & The Steve Jobs Way.

 4. Elon Musk (Ashlee Vance) 
-Another polarizing book. I am a Spacex & Tesla Fan-boy. I picked this up in 2015 the day it was launched! I have read this at least half a dozen times by now. Hard-work, perseverance and creativity to the max. A must read for every entrepreneur.

 5. iWoz (Steve Wozniak) 
-If you are a technical-founder, this is a must read! Gives a very interesting view of- behind the scenes at Apple during its inception and early years. I was really moved by how humble Woz was/is and I am inspired by his problem solving approach.

 6. How Google Works (Eric Schmidt, Alan Eagle & Jonathan Rosenberg) 
- A very good book to read after/before this: "In the Plex" by Steven Levy. Hands down the two most important / influential books while you are starting something new. I read these while I was contemplating conceiving my startup and giving up the "safety" (illusion of safety) of a "normal-job". A must read for anyone planing to start a company and want to take it to the stratosphere (or higher)!

 7. Dreams from My Father (Barack Obama) 
- Another polarizing personality. A short but powerful memoir by Obama. This gives a unique insight into Obama's thought processes. Most people can relate to this and every "Leader" must read this. It really helps clear some of the fog on- what makes an effective leader.

!Business & Management:!

 1. The Upstarts (Brad Stone) 
-An amazing story about AirBnB and Uber. Culture is key and culture is defined by the Founders and the first few hires. The two companies are extremely similar in many ways (timing, shared economy, disruptive) but radically different in the way they are run. This came out earlier this year and is probably one of the best "startup-books" of 2017!

 2. Zero to One (Peter Thiel)
-A very short book, a must read for every entrepreneur. Dives into "first principal" thinking & execution. A very good read after/before "Elon Musk" the biography by Ashlee Vance.

 3. The power of Habit (Charles Duhigg)
-I have always wondered how successful people get so much done. They have the same amount of time as everyone else, but they are able to get so much more done...how? This book answered that question. Ever since, I have been using "Habits" as my ultimate personal tool. Day & night difference when you figure out how habits are formed how they are broken and how you can influence the process. A good companion book (from the same author) "Smarter Faster Better".

 4. How to win friends & Influence people (Dale Carnegi)
- I bought this book freshman year in college. I tried reading it then and gave up / got bored after the first few pages. I really wish I had actually made an effort to read the whole thing. It sat on my shelf collecting dust. Luckily I picked up the book again and gave it another shot. I read this during a particularly "rough-patch" at our startup- really helped me cope with the "situation". What was once a boring book is now scribbled with notes, bookmarks and highlights. A very useful life-guide.

 5. How to win at the Sport of Business (Mark Cuban)
- A very entertaining yet eye-opening book. It is very short, finished it in a couple hours. A must read for every entrepreneur. I keep coming back to this when I feel like things are going dreadfully slow and I need a boost. If you follow Mark Cuban's blog, skip this. It is mostly a summary of his blog posts.

 6. Finding the next Steve Jobs (Nolan Bushnell)
- Finding good talent and retaining it is probably the single most important thing you will do as startup founders (especially if you are the CEO). Many things in this book seem obvious (if you are familiar with the Silicon-valley culture). A good read before you set out to hire your dream team of "rockstars". A good companion book: "Outliers" By Malcom Gladwell.

 7. The hard thing about hard things (Ben Horowitz)
-Are you in a startup? If the answer is YES, then read this NOW. Ties well with "Finding the next Steve Jobs". I wish I had read this before I started my company. I have lost track of how many times I have listened to this audio-book.

 8. Start with the Why (Simon Sinek) 
- Mid-late 2013 I came across Simon Sinek's ted talks on the golden-circle and my mind was blown. I bought the book the very next day and I keep coming back to my notes whenever we are starting a new project. Get the "Why?" right and the product will define itself. This is true for building companies as it is for building great products. A must read for every entrepreneur.

 9. Art of the Start (Guy Kawasaki)
-Getting ready to pitch? read this! Also watch Guy's many presentations/talks on YouTube. A good companion book- "Pitch Anything" By Oren Klaff

!Escaping Reality! 1. Hatching Twitter (Nick Bilton)-Sooooo much drama! Definitely learnt what not to do! Very interesting read.

 2. The accidental Billionaires (Ben Mezrcih) 
-I have heard that not everything in this book is "completely-true" (more distorted than others...) but still a great read!

 3. The Martian (Andy Weir)
- Hands down the best science fiction book I have read. I have lost count how many times I have listened to the audio-book (probably >15). I want to go to MARS!

 4. Harry Potter Series. 
-My go-to "background noise". I read the books as a kid. I use the audio-books to tune out the world when working on stuff that does not require my full attention (Listening Goblet of Fire as I type this)...

 5. Jurassic Park || The Lost world (Michael Crichton)
- Read the books as a kid. I usually listen to it while I am traveling. Still gets me as excited as it did when I first read the book. (The movies are nothing compared to the book...)

 6. Ender's Game (Orson Scott Card) 
- I am looking forward to reading the entire series. Read it once, listened to it many times (lost count). I love Space!

 7. Ready Player One (Ernest Cline)
-I picked this book up while I was working on a VR project back in 2014. An excellent book for re-reads and a nice place to get some inspiration.

!Other honorable mentions:! Actionable Gamification (Yu-Kai Chou) I invented the Modern Age (Richard Snow) Inside the tornado (Geoffrey Moore) Jony Ive (Leander Kahney) Sprint (Jake Knapp) The lean startup (Eric Ries) The selfish Gene (Richard Dawkins) Titan (Ron Chernow) The inevitable (Kevin Kelly) The Innovators (Walter Isaacson) Scrum (Jeff Sutherland)

!Most if not all have an audio-book version!

If you are in a startup or plan to start one soon, reading/listening to books should become a routine. I try to get through at least one book a week, sometimes two.

Good luck!

Lordarminius 5 days ago 0 replies      
A History of Western Philosophy by Bertrand Russell
feignix 4 days ago 0 replies      

1. Flowers for Algernon - Daniel Keyesbecause it's so beautifully written and made me experience a flood of emotions.

2. The Little Prince - Antoine de Saint-ExupryAgain, a very touching, charming book about a little kid's world(universe?) view, told through his adventures.


1. The subtle art of not giving a F*ck - Mark MansonOpened my eyes to what I was possibly doing wrong with my life.

2. Radical Acceptance - Tara BrachStill currently reading it, but I wish I'd found it earlier.

pombrand 3 days ago 0 replies      
"Peak: Secrets from the New Science of Expertise" because I've been learning ineffectively my whole life not knowing that I was. Should be required reading for every 15 year old. The best, most science based book I've ever read about learning effectively.
rachkovsky 4 days ago 0 replies      
No Excuses!: The Power of Self-Discipline by Brian Tracy. It's so good. I keep rereading it. Does wonders to my motivation and productivity.
ankitank 5 days ago 1 reply      
A wild sheep chase by Haruki Murakami
novalis78 5 days ago 0 replies      
"How to get what you want", by Raymond Hull. Everything else follows, like a bootstrapping process. Wish I had found it 10 years earlier. Changed my life forever. I could recommend dozens other books, my walls are lined with shelves of books, but you and me are different and all you'd need is this one book to find everything else you'd need to read or do.
shivrajrath 5 days ago 0 replies      
The Last Hours of Ancient Sunlight: The Fate of the World and What We Can Do Before It's Too Late

This book is a detailed research on what's wrong with the world and what can be still done. The chapter II brings inputs from various culture on approaches that could improve from ground up. Must read book for us and future generations.

Can someone suggest something similar to this book?

wowsig 5 days ago 0 replies      
Discovered a lot of fresh books and reasons for reading them.

I've collated the ones with interesting reasons for reading them here --> http://shelfjoy.com/sia_steel/books-hn-wished-they-had-read-...

pmoriarty 5 days ago 1 reply      
I wish I'd read some good books on fitness and nutrition when I was younger. It could have saved me a whole host of health issues.
peternicky 4 days ago 0 replies      
In no particular order:

- So Good They Can't Ignore You- Deep Work- Hackers by Steven Levy (perhaps my favorite book)- Learning How To Learn- The Person and the Situation- The Art of Money Getting- Make It Stick- The Algorithm Design Manual- Moonwalking With Einstein- Extreme Ownership

ThomPete 4 days ago 0 replies      
"The Origin of Consciousness in the Breakdown of the Bicameral Mind" by Julian Jaynes

It was the first time I read someone who was thinking about the mind like I am and was able to put into words some of my own more vague thoughts.

It's definitely going to leave you thinking.

pedrodelfino 4 days ago 0 replies      
Hackers and Painters from Paul Graham. I wish I had read that when I was 14 years old.
BJanecke 4 days ago 0 replies      

The Mythical Man Month && Design Of Design by Fred Brooks

Everything else

Hitchhikers Guide (Existentialism does not have to be edgy)The Foundation Series (Bureaucracy and Institutionalization will never undermine Ingenuity)Dune Series (Plans within plans)

mattbettinson 4 days ago 0 replies      
The power of now changed my life. Hard to describe without sounding hokey
Anand_S 4 days ago 0 replies      
1. The One Thing. ~ Gary Keller2. Mini Habits. ~ Stephen Guise3. Learned Optimism. ~ Martin Seligman4. Spark. ~ John Ratey5. Miracle of Mindfulness. ~ Thich nhat hanh
Entangled 5 days ago 0 replies      
"Anatomy of the State" by Murray Rothbard.

We live in a world of thieves masqueraded as leaders.

mbrodersen 4 days ago 0 replies      
"How Not To Die" by Dr Michael Greger, Gene Stone. It really changed my mind about how to achieve long term mental and physical health.
CamTin 4 days ago 0 replies      
/Cannery Row/ by Steinbeck. It's a short read, but it packs in a lot of insight about the human condition. I re-read it every year or so, and still learn new things.
wdr1 5 days ago 0 replies      
A Random Walk Down Wall Street. Helped me understand investing.
du_bing 5 days ago 0 replies      
The Art of Computer Programming series, by Donald Knuth.They are so well written and full of humor, I can not think of any technical book(or any kind?) written as good as these.
egonschiele 5 days ago 0 replies      
Evicted. Showed me how racism is still alive today, how bad it actually is to live in poverty even in a wealthy country in the USA. Tore down a lot of assumptions I had made.
razzaj 5 days ago 0 replies      
The upside of irrationality. Ariely

Germs guns and steel. Jared Diamond

Influence, the psychology of persuasion. Cialdini

Justice: what's the right thing to do. Sandel

QED. Fyenman

All of Feynman lectures on physics

The hard thing about hard things. Horowitz

Al muqqadimah. Ibn khaldun

imsodrunklol 4 days ago 0 replies      
A little late to the game but this book changed my perception of reality.

Saving the Appearances: A study in Idoltary by Owen Barfields

You won't regret it.

makeset 5 days ago 1 reply      
Code Complete by Steve McConnell https://www.amazon.com/dp/0735619670
palerdot 4 days ago 0 replies      
The slight edge

This is a very interesting book that emphasises how small persistent things matter in life. Changed my worldview for good.

febin 5 days ago 2 replies      
The Holy Bible

Start With Why

The Subtle Art of Not Giving a F*ck

Think Like a Freak


cmmn_nighthawk 5 days ago 0 replies      
Metaprogramming Ruby by Paolo Perrotta
gtirloni 5 days ago 0 replies      
The Denial of Death (Ernest Becker)
jinxedID 5 days ago 0 replies      
The Effective Executive.My company did not prepare me very well for being a team lead.
zabana 4 days ago 0 replies      
Pretty much everything ever written by William Gibson should do.
ctdavies 5 days ago 0 replies      
Das Kapital. You know why.
BevanR 5 days ago 1 reply      
The lean startup. How to win friends and influence people.
akulbe 5 days ago 1 reply      
The Personal MBA.

Deep Work.

How to Win Friends and Influence People.

Think and Grow Rich.

The E-Myth Revisited.

The Science of Selling.

(stuff about stoicism)

johnsmith21006 4 days ago 0 replies      
The Goal and then the Phoenix project.
booleandilemma 5 days ago 0 replies      
"Atlas Shrugged" by Ayn Rand.
bonhasgone 5 days ago 0 replies      
The compound effect - Darren Hardy.
zedshaw 5 days ago 2 replies      
How to See Color and Paint It -- It taught me how to see color and paint it. Also how to use a palette knife which makes my paintings very different and fun.

Remembrance of Things Past -- I'm still reading this, as it's a massive stream of consciousness book, but I wish I'd started it when I was younger so that I'd be done with it by now. It's just so weird to read it and experience the writing that I enjoy it for simply being different. As you read it just remember that every ; is really a . and every . is really \n\n.

Van Gogh: The Life -- I absolutely hate the authors. They're great at research, but I feel they had a vendetta against Van Gogh of some kind. Throughout the book, at times when Van Gogh should be praised for an invention, they make him seem like a clueless dork. Ironically, their attempt to portray him as a dork who deserves his treatment ends up demonstrating more concretely how terrible his life was because he was different. I think if this book were around when I was younger I might have become an artist instead of a programmer.

A Confederacy of Dunces -- Absolutely brilliant book, and probably one of the greatest examples of comedic writing there is. It's also nearly impossible to explain to people except to say it's the greatest example of "and then hilarity ensues".

Mickey Baker's Complete Course in Jazz Guitar -- After a terrible guitar teacher damaged my left thumb I thought I'd never play guitar again. I found this book and was able to use it to learn to retrain how my left hand works and finally get back to playing. Mickey Baker's album also brought me to the Bass VI, which got me thinking I could build one, and then I did and now I've built 6 guitars. I play really weird because of this book and I love it. This book also inspired how I wrote my own books teaching programming and without it I'd still be a cube drone writing Python code for assholes. If I'd found this book when I was younger it most likely would have changed my life then too.

Reflections on A Pond -- It's just a book of this guy painting the same scene 365 times, one for each "day of the year" even though it took him many years to do it. All tiny little 6x8 impressions of the same scene. I learned so much about how little paint you need to do so much, and it's also impressive he was able to do it. I can't really think about anything I've done repetitively for every day of a year. I've attempted the same idea with self-portraits but the best I could do was about 3 month's worth before I went insane and started hating my own face.

Alla Prima: Everything I Know About Painting -- Instructionally this book isn't as good as How To See Color, but as a reference guide it is about the most thorough book on painting there is. It's so huge it's almost impossible to absorb all of it in one reading, so I've read it maybe 5 times over the years.

rom16384 5 days ago 1 reply      
The bible
Ask HN: Torn between impact and lack of recognition as a startup employee
7 points by gaboom  1 day ago   4 comments top 4
j3nnif3rfu 2 hours ago 0 replies      
Hey, I'm so sorry to hear this...I'm working at a startup too, so I understand how the lack of clearly defined structure can sometimes lead to frustrations like this.

When I first joined my startup, I felt that way too. I felt like my voice didn't matter or was always echoed by someone else, whose exact same idea would matter more.

Like what @dmilicevic said, you have to stand up for yourself! It's a lot easier said than done, but talking to your CEO would hopefully help! If he ignores you, then perhaps it is time to move on.

With that said, don't give up on startups! There are bad bosses everywhere, unfortunately, but not all startups are like that :) you can truly establish a sense of ownership and recognition at the right startups!

gaboom 8 hours ago 0 replies      
Thanks for the comments. I'll make my case in a non-confrontational positive manner and consider moving on in case that doesn't help enough.
dmilicevic 1 day ago 0 replies      
stand up for yourself. From what you've just said it looks like you've been treated unfairly at least. It's not worth to beat yourself up over it. What do you have to loose? There's a shitload of jobs there. You can be unappreciated/undermined at million other jobs just as well.

Doesn't mean you need to be arrogant or an idiot about it, simply speak your mind like you did in this post.

smb06 1 day ago 0 replies      
Does not sound like a situation that values you or your career. I would strongly consider alternatives.
Ask HN: Finding jobs that issue new H1B visas?
8 points by tesco  1 day ago   4 comments top 4
bsvalley 1 day ago 0 replies      
So where to start... You missed the 2017 H1B application window. It's over this year since the quota has been reached already. Companies who want to hire someone on an H1B will have to submit the application in April 2018, then, wait until October 2018, which is the next fiscal year when your visa will be "activated". You can't join the company earlier. So we're talking about you starting in October 2018 if you're trying to join a company via an H1B visa today. That is the exact reason why companies refuse to hire people via H1B. They need people right now, not it 18 months. Though, they can easily transfer an existing H1 visa without any deadline nor quota. That's why they do accept H1 transfers.

Which country are you from in Europe? The government is responsible for immigration related stuff, I doubt they can guaranty any transfer from Europe. It's out of their reach.

Look at J1 visa's, maybe you can join a company on an J1 (no quota, no deadline), then in April next year they can apply for an H1B. You'll be under J1 for about 18 months until October 2018, which will allow you to stay and start working in the US right now. Usually J1 visa's are for internships, etc.

JSeymourATL 17 hours ago 0 replies      
Recent news item: some entrepreneurs are "hacking the system" through a workaround that started as an experiment in Massachusetts and has expanded to five other states. > http://www.npr.org/sections/alltechconsidered/2017/05/03/526...
NhanH 1 day ago 0 replies      
The chance of getting an H1B visa is somewhere around 20-25% lately. This is if you and the company is doing everything correctly, and there is absolutely no way to increase the odd. This is why company is starting to refuse sponsoring new visa: it is really hard for them to waste months waiting to know if you can work for them.
zerr 1 day ago 0 replies      
What about O* visas?
Ask HN: Building an MVP without a designer in 2017?
18 points by Narzerus  2 days ago   7 comments top 6
gls2ro 2 days ago 0 replies      
You are probably asking what frameworks to use. But I suggest you should first use Sketchapp or Adobe Experience Design (at least these two I used and liked a lot).

They allow you to do some UI mocks/basic design with very little effort.

You can find and import in them Boostrap templates providing you with all the elements you need. Then the next step I suggest to do is to pick the basic colors you want to use for normal text, action buttons ... This way you will make sure that in your app you will use only those colors providing a consistent color scheme.

And then you can start to design your interface. Both apps provide simple tools to use and with very little learning curve for doing simple design.

For me (even if I am not a designer) doing this helps me focus on understanding how the elements that I want to build integrate with each other on UI side. And also forces me to focus on using the same elements and the same colors.

For both apps you can also find a lot of free designs provided by various authors from which you can inspire.

You can also browse https://dribbble.com or https://www.behance.net to be inspired by designs that you like.

ninjaofawesome 1 day ago 0 replies      
As a front end developer, I would say if you need an MVP to get out the door and you've got a bunch of plates in the air, then yes, Bootstrap (and also Font Awesome!) works just fine for all the things that you don't really care to worry about at the present moment. Its also easy enough to remove if you do eventually bring in a UX person or a designer to refine things.

That being said, the little things that you can do make a huge difference between a site that looks like its made with bootstrap vs a site that has a bit more going on under the design hood. Pay a bit of attention to your fonts and line heights, add in -webkit-font-smoothing, and lock down your colors before you start (e.g. black, white, brand colors, grays, etc.) Consistency will make your life so much easier to get that UI looking amazing, and it takes about 15 minutes or less to write down some variables (assuming you're using a CSS preprocessor). Also, optimize your assets (images, etc) and make sure you have fallbacks if something doesn't load fast.

Lastly, make sure you know what you (roughly) want your app to look like on mobile, tablet and desktop before just diving in to Bootstrap- even just roughly sketching out boxes on paper helps me sometimes with that. I like to use the Chrome emulator for a rough idea of any device as I work on phone, tablet and desktop in either orientation as well.

All in all, what I've described you can easily implement in a a few hours to a few days (depending on the complexity of your site) and makes a huge difference. Once you're making millions, you can hire a great designer to push your site to the next level!

alaskamiller 2 days ago 1 reply      
Buy an UI. I've been building digital stuff for twenty years. In the end, just buy an UI with the tech stack you're familiar with. Themeforest, CodeCanyon, whatever. Especially if it's a enterprise dashboard/admin tool. Just buy the most well built and most contributed to UI and master it so that you can re-deploy it over and over again. You've got more important things to do.
JeffreyKaine 15 hours ago 0 replies      
Bootstrap with material design is my suggestion here. Material is versatile enough for both iOS and Android, and it translates decently well to web. The color palette and font stack are both easy to work with.


tbird007 3 hours ago 0 replies      
You could check html5up for free templates to start with.
dyeje 1 day ago 0 replies      
If you're going to hire a designer in the future, then just use Bootstrap for now.
Ask HN: What makes a Product Manager different from a Project Manager?
4 points by stollercyrus  1 day ago   4 comments top 3
NetStrikeForce 22 hours ago 0 replies      
A project has a shorted life-span and specific outputs that would mark the end of the project.

A product might evolve and run "forever" without a specific outputs to mark the end of the product.

itamarst 1 day ago 1 reply      
It depends a lot on the company, but:

1. Project manager: make sure the product (as defined by someone else) ships on schedule with the top priority features (as defined by someone else).

2. Product manager: make sure the product meets user needs. This may involve some project management as well.

johnmurch 15 hours ago 0 replies      
A Product Manager: What and Why

A Project Manager: When and How

       cached 9 June 2017 12:05:01 GMT