hacker news with inline top comments    .. more ..    6 May 2017 Ask
home   ask   best   2 years ago   
Ask HN: Teams using AWS, are your i3 instances dying at abnormal rates?
18 points by caffeineninja  11 hours ago   1 comment top
DelaneyM 5 hours ago 0 replies      

We've had a mix of ~40 t2.u & c4.l instances running for a year with no downtime. Our i3.4xl has fully borked twice (memorable when we lose the ephemeral drives and need to reconstitute the analytics data).

Though it will be much more expensive and less performant, we're moving the system to an RDB-backed c4 soon for reliability, the people time to recover is too expensive.

Ask HN: Is it a waste of time to teach yourself data science without a degree?
167 points by thewarrior  1 day ago   126 comments top 49
itamarst 23 hours ago 2 replies      
(copied from answer to another similar question.)

Companies are looking for what you as a candidate can do for them.

Self-study or taking a class signals some level of "I tried to learn this thing." So that's a start.

Even better is "I built X", where X is obviously based on skill you learned. In which case you can omit the class because you have proof of learning, not just trying to learn.

Even better is "I provided business value V to my employer by building X." Because now you're showing how this skill is useful to someone else. So using skill at work is another thing to try.

Ideal is you write the above, but emphasize V (or choose between multiple things you can list) in a way that suggests you can help the needs of the particular company you're applying to.

So there's having the skill (which is good), but there's also how you present it to show it will provide value (also important).

More on the contrast between having engineering skills and marketing yourself here: https://codewithoutrules.com/2017/01/19/specialist-vs-genera...

endymi0n 23 hours ago 1 reply      
Don't have a degree myself and about a third of the people I hire also don't have one. Why? Because I don't give anything about them.

I'd say if you don't want to work for a large, respected company first, it's a waste of time. Your degree is your entry ticket to your first job, not more. Later on, you can even work at Google if you want - just make a great product and get acquihired.

Three tips on what you should do instead:

1) BUILD something and show off your skills. Like, continuously. Always have your own challenges, do something about them, put your code online on Github. Host it so it can be seen and played with. Work towards a goal and learn what you need to learn on the side.

2) Focus on applying to companies not listing a degree in their job ad. You'll see there are quite a lot of them.

3) Don't focus on your lack of a degree in any interviews. Don't deny it, but just don't make it seem a deal. Often times, people won't even ask.

imh 19 hours ago 0 replies      
I have this same non-background and work on the proverbial team of mostly PhD's. Short answer is yes, you can do it. Long answer is that you have to be really, really good to compensate, and getting to that point is absolutely exhausting. It's not about just going through a couple ML courses on coursera. You need to understand statistics, CS, and ML at a really deep level, and that means being good at applied math too. I was lucky to come out of physics and have a solid applied math background anyways, giving me a few years head start on that self study.

If you need structure to go through a few years of coursework on your own, you should go for the degree. If you just want to learn how to put pieces together and not learn how/why they work under the hood, you should opt for something else.

As with most questions about going nontraditional routes, you have to be really good to compensate, and getting really good is constant exhausting work.

quadrature 22 hours ago 3 replies      
A good programmer with even just a high level overview of ML and Stats concepts would be an incredibly valuable asset to a data science team. Most ML people are academics who tend to not have good software engineering skills, finding people who master both domains is really hard.

Also to add to that most of the work in ML is feature engineering, data cleaning, testing and building pipelines which all require a good software engineering background.

jorgemf 22 hours ago 0 replies      
You can get a job with a portfolio in data science. Just go to kaggle and beat everybody in all competitions. That is worth more than a degree. Companies will try to reach you if you can do it.

But, honestly, I think it is very difficult to learn data science by yourself. Someone with experience teaching you will make a huge difference. Data science is different than programming as in programming you can see step by step what is happening, in data science most of times it either works or doesn't. And you know it after your algorithm has run through all data for at least an hour. It is really hard to learn this way, you need hints that only someone with experience can provide to you. Moreover you can do a lot of mistakes without knowing it, for example, when cleaning the dataset people use the whole dataset to fill gaps and them split it for training and test. It feels right but that it is a huge mistake that invalidates the whole experiment (because you use information from the test set in the train set, to fill the gaps).

ChemicalWarfare 20 hours ago 0 replies      
>> in the real world you won't be allowed anywhere near such a position without having a degree ...

yes, most likely they won't hire you for a "Data Scientist" position, but there are related jobs out there you can be qualified for if you have programming skills and understand DS stuff to some degree.

I've seen setups where a PhD with a "scientist" in his title would act as an architect/co-team lead with a senior engineer running a team of developers.

Someone has to implement DS' ideas after all and unless we're talking a really small team (or a jack of all trades DS) where DS has to write all the code himself - there is a need for developers with "some DS background" in those situations.

NumberCruncher 1 day ago 5 replies      
It depends on how you define "data science".

If you are like AWS and say that using logistic regression is machine learning, then yes, you can teach yourself data science. Learn SQL, read a couple of books on logistic regression, use some open data for building a couple of models. There are many companies where you can have a decent job and an easy living with SQL and logistic regression on your tool belt.

If you say that data science starts with automating stock trading or building the intelligence of self driving cars, than no, you can not teach yourself data science. You will need at least one degree. Or more.

dagw 23 hours ago 0 replies      
Non of the data scientists I know actually have a degree in data science. They tend to come from either a physics, math or statistic background and have picked up the data science bits of the side.

Also many jobs that aren't data science jobs per se offer many opportunities to do data science type things. Get a job at a company that works with a type of data you find interesting, and that perhaps doesn't have a dedicated in house data scientist, and every time an interesting data related challenge shows up just go "I have a good idea on how we can approach this" (assuming you actually do). Next thing you know people will coming to you with their data science problems and before you know it you have several years of data science experience on your CV.

nilkn 20 hours ago 0 replies      
I don't think it's a waste of time. Even if you can't straight-up get a pure data science job, you can still benefit from having this background:

(1) You could focus on building data processing platforms using, e.g., Spark. This will get you very close to the data science folks and you could probably end up doing some interdisciplinary work if you wanted it and demonstrated enough interest and competence. At the very least, people who can build highly scalable data processing systems and who also have a reasonable understanding of how the data is being used are very valuable.

(2) There are lots of companies out there that don't engage in data science/machine learning at all. You could join such a company and represent the push towards developing a data science or ML division or team. If you're successful this could also get you major credit as a manager as well as putting you very close to real-world data scientists and ML projects.

randcraw 21 hours ago 0 replies      
To hit a target, first you have to see it clearly. The term "Data Science" covers a broad collection of jobs, from statistician to machine learning/pattern recognition/AI expert to DBA to business analyst to visualization/animation expert to cloud/cluster/Hadoop expert to general data wrangler.

The skills required for each DS role vary a lot. I wouldn't expect a cloud expert to have learned about the Hadoop stack or HPC workflows in school, at least not to a useful degree. The same goes for DBA or business analyst or data wrangler.

But statistics and ML lie at the other end of the spectrum. These roles require a hierarchy of formal skills that are rarely mastered outside of college. They're expected to keep up with the research literature or formal techniques, which almost always requires the math skills of an engineer or mathematician.

Remember, HR everywhere is technically clueless. If management doesn't tell them the precise set of skills needed for the job, they'll minimize risk and ask for more expertise and experience than is needed -- usually in the form of excess degrees or prestige or buzzwords. The best cure for this is to bypass HR and go straight to a technical manager who knows what s/he wants. That's hardest at large corporations, who tend to outsource their HR needs to the lowest bidder.

At a smaller company, a lack of degree will matter less. If you can convince them you know what they need RIGHT NOW and can learn future material quickly, that's what they want to hear. (That's probably what the bosses of the startup did).

Or if you're targeting a specific project, then if you can show (e.g. via Kaggle or an online portfolio) that you clearly have the needed skills and you're not just a script kiddie, that speaks a lot louder than a mere degree (especially if it's over a decade old).

theonemind 12 hours ago 0 replies      
Well, imagine yourself on the interviewer side of the table. If you have a candidate who genuinely knows more than you, will you honestly turn them away for lack of a degree?

Obviously, you'll have problems getting past HR/filtering processes, and knowing more than whoever interviews you is a high bar.

zengid 22 hours ago 0 replies      
As Mike Acton (Data Oriented Design Guru) once said in an interview "I don't care what you learned in school.. I care about what you learned of your own volition" [paraphrased from 1].

It never hurts to learn new things. Another HN poster suggested this channel for beefing up on linear algebra, and I absolutely love it [2].

[1] https://youtu.be/qWJpI2adCcs?t=58m

[2] https://www.youtube.com/playlist?list=PLlXfTHzgMRUKXD88IdzS1...

daliwali 20 hours ago 0 replies      
I hold a degree in mathematics. Small-minded HR drones have told me I'm not qualified to do programming since I'm not formally trained in computer science. I have been doing this since I was a kid.

Don't listen to them. Every professional will at some point in their career be judged by those less capable.

jey 20 hours ago 0 replies      
> it seems that in the real world you won't be allowed anywhere near such a position without having a degree in the subject.

I don't have a degree but work as a data scientist at a research institution. I'm self-taught and was originally hired as a software engineer on the basis of my projects and work experience.

It's true that you have to convincingly make the case for your competence, but a bachelor's degree is really at best a certificate of minimal competency in a subject. Its signalling[1] value quickly gets swamped out by actual work experience where you're continually learning and improving. So there's a great hack: just do actual good work and put it on your resume. Your portfolio of work should convey your competence so well that having a degree wouldn't really add anything. (So you can skip the degree, but you'll still have to put in the work.)

Remember that any healthy organization wants to hire for competence at job duties. If some company rejects you for not having a degree because the hiring manager has to cover their ass to upper management instead of optimizing for getting work done, you should really just be glad that you dodged a bullet.

I think what's most important is to keep growing and learning. Pg had it right: "If you're worried that your current job is rotting your brain, it probably is"[2].

1. https://en.wikipedia.org/wiki/Signalling_(economics)

2. http://www.paulgraham.com/gh.html

EternalData 21 hours ago 0 replies      
A lot of employers still use degrees as a rough proxy for ability and dedication. This may be especially prevalent in data science since the field itself tends to have a lot of Masters/PhDs occupying the field -- which will tend to bias the hiring process towards viewing degrees as a strong positive signal.

With that said, a lot of companies hiring for data science roles fall into the category of software startups -- larger companies like Google or Facebook are looking for specialists who tend to hold degrees. But at smaller companies, you can be more of a generalist and there, the old mantra of "show me what you've built" often applies. You could build out a data science career if you found just the right company.

By no means is it easy, but I wouldn't say it's a waste of your time (unless you have some incredible opportunity cost you're using up).

If you were to go about doing it, I found this blog post that can help you with your plan of attack: https://www.springboard.com/blog/learn-data-science-without-...

jtcond13 10 hours ago 0 replies      
Writing a full reply since I don't agree with much of the advice given.

I've worked around/in data science teams at a large BigCo and I think that you're far overestimating the bar here. There aren't enough people to who can write data pipeline code (SQL/Shell/etc.), much less implement and intelligently explain statistical/ML models. Also, the average decision maker here does not understand the difference between 'created model in Pandas' and 'created model with Amazon's ML API'.

The modal background of data scientists in industry is closer to 'Econ BA + knows Python' than 'Artificial Intelligence PhD'. Moreover, the former will still enjoy a remunerative career if (s)he's sufficiently savvy about identifying problems and showing off how they can be solved with technology.

There may be a point in time when companies can't get a return by throwing math-savvy programmers at a problem, but that will be long after you and I have passed from the scene.

eljefe6a 19 hours ago 0 replies      
I teach data engineering and data science. I've taught at hundreds of companies. Yes, there are self-taught people doing data science in the real world. They're few and far between, but they are out there.

If you're coming from a programming background, I'd suggest becoming a Data Engineer with the goal of becoming a Data Scientist. I've had several students do that. They were general programmers who learned Big Data/data engineering and eventually became more technical Data Scientists. You can start to learn more about the whys here: http://www.jesse-anderson.com/2017/03/what-happens-when-you-....

dpflan 23 hours ago 2 replies      
Does anyone have experience with this scenario and actually completed Udacity nanodegrees for Machine Learning or Data Science or AI?

Their programs express job placement as a perk of graduation.


Educating for the "jobs of the future" is one of Udacity's goals, data scientist being one of those jobs.

inputcoffee 19 hours ago 1 reply      
I can't answer the question directly, but I will say this: machine learning is a lot of applied math.

Suppose you are setting up a convolutional network to recognize some special object for a company. You will need to understand that math to know what parameters to tweak.

Is it the learning rate? Is it the way you randomized the weights? Is it the activation function?

Although, in fairness, I don't think even a PhD level candidate works out what the reason is likely to be. More than likely they have a few heuristics in their head (oh, it stops learning too soon, let's just drop the learning rate. Oh, it never converges? that activation function can't propagate error and so on).

The point is that you have to know the theory to be useful. It hasn't been worked out. It is very much a living science project. That's the fun of it though.

brownesauce 21 hours ago 0 replies      
I would suggest joining an early stage start up and getting involved with anything remotely to do with data science at every opportunity. I joined a small company as an analyst with no programming experience and minimal statistical knowledge. I was a graduate but not in a relevant subject and just taught myself the relevant skills on the side. It was a lot of work but not a waste of time. The programming side of the job can be learnt fairly quickly but the maths and stats side takes longer. I don't think you can really succeed in data science without both. Saying that, you certainly don't have to have a degree to be able to use that knowledge. I did just do a statistics degree though, and it has made the job a lot more pleasurable.
Eridrus 1 day ago 0 replies      
It's possible, but definitely challenging. I did exactly this last year and got several offers, including prestigious companies, but I didn't have my pick of jobs as I did before and had to make some trade offs to be doing what I wanted, but it's definitely possible if you're a talented dev.
framebit 18 hours ago 0 replies      
As a sidenote to your question, you may want to consider Data Engineering. It's not a sexy as ML, but it pays well and it's in high demand because somebody has to pipe all that data around so that the ML folks can do their thing. IMO it's much easier to go from a more traditional software development role into Data Engineering than into something as math-and-theory-heavy as ML because Data Engineering is based in how computers work and some knowledge of algorithmic scaling, not in heavy linear algebra/stats like ML.
intellectronica 21 hours ago 0 replies      
My experience has been that when it comes to the job market _knowing_ stuff is extremely valuable, but _having learnt_ stuff isn't very valuable, unless you have an excellent degree from a top tier university. What this implies is that you should select online study options based on how they contribute to your actual knowledge, rather than how they will appear to employers (in most cases, they will appear like nothing). Once you know enough, build a portfolio of projects to show what you know and look for a job based on that - if you really know how to get stuff done in the field you'll have many options to choose from.
venture_lol 10 hours ago 0 replies      
With data science, do you mean data science as in learning the tools, the software behind data science? That's like learning any technologies or tools.

Along this line, you would just be a "tech", not a "scientist" That's not to say you won't be real well compensated.

Data Science as in you are someone able to make sense of the myriads of conflicting data, derive pattern, synthesize bits and bytes into action plans, there is no degree in that :)

As an example on this line of thought, people may win the Nobel prize in Economics even though they may have no idea on how to use Excel :)

traviswingo 20 hours ago 0 replies      
Teaching yourself anything is definitely not a waste of time.

Don't get so caught up in the "degree."

I've met individuals with graduate degrees in computer science (i know OP asked for data science, but the overall point here applies to any field) that didn't hold a candle to self taught developers. If you're actually passionate and interested about something, you will become extremely well-versed in it. On the other hand, if you're not excited about data science, a degree with probably benefit you more than without one since it will force you to learn the topic.

In a nutshell, it's up to you to make yourself valuable and present that value to the world - a degree is just a shortcut for recruiters to filter on, but you can skip recruiters and talk to anyone in any company.

wdroz 1 day ago 1 reply      
You can do a "regular" programming job and seeking business cases at your company where data science could help.

After, meet your boss and tell him something like "I can make this process 10-20% faster with a 3 month projects"

If he accept, you will have data science real world experience in your CV and it will increase your weight on the CV stack when you apply for data science jobs.

wellwell 23 hours ago 0 replies      
Some actual data: in 2012, 70% of employed data scientists had a Master's degree or more


So no, not futile.

thekthuser 16 hours ago 0 replies      
Most data scientists dont have formal data science training. Most of the ones that go through our free fellowship (https://www.thedataincubator.com/fellowship.html - warning, I work at TDI) have STEM backgrounds and still land data science jobs at places like LinkedIn, EBay, Amazon, Capital One, Facebook, etc
j7ake 15 hours ago 0 replies      
Just think about how much better you need to be than someone with actual credentials (e.g. PhD in machine learning and real presentable experience) and then assess whether you are good enough to compete with them.

If you don't know how good you are relative to the competition with PhDs, then it would be worth it to have a discussion with people who have a taste for the field.

xchip 19 hours ago 0 replies      
Lets try! For example this the math behind a 2x2 neural network:


It is computing the derivatives of the error with respect to the weights.

If you feel comfortable reading that then you are good to go.

iaw 19 hours ago 0 replies      
I think it's harder but still feasible to obtain a job in data science, after the first job things will roll a lot quicker.

What a self-taught DS would need to do in order for me to feel comfortable hiring them is have a public body of work that I find impressive.

There are a huge number of publicly available datasets packed full of interesting information. Someone that shows they can do the work with a few findings on their github would be equivalent to a degree on a resume.

tmaly 21 hours ago 0 replies      
I think if you really want to get into the field, self study can be great. Yes you could learn some of the frameworks and libraries out there, but I think you will miss the bigger picture if you do not grasp the fundamentals.

Even brushing up on probability and linear algebra has benefits. Your learning a skill set that you can use in other areas of life. Heck, if you have kids or will have kids someday, you will have the knowledge to teach them valuable skills.

rvivek 17 hours ago 0 replies      
What I've seen is that more and more companies just care about skills rather than degree. Self-teaching requires a lot of tenacity and most hiring managers would love this soft skill as well. Skills-based hiring is the future. If you can build real-world projects and demonstrate your skills, you should have a good shot.
dansman 20 hours ago 0 replies      
Break dow the word "data science" into non bull shit terms, actionable items, and you will see how achievable it actually is.
Mz 14 hours ago 0 replies      
I suspect it depends in part on where you want to apply. Generally speaking, large corporations and government entities tend to want formal credentials, like degrees. This may be less true of smaller or newer operations.
Pandabob 21 hours ago 3 replies      
On a related topic, I'm graduating with a master's in (computational) physics, and am already incredibly insecure about not having a PhD as many of the data science positions seem to prefer those.

Would a four year PhD, let's say in ML, be a worthwhile investment from a data science career point of view?

usgroup 1 day ago 0 replies      
Not a waste of time but you'll need to be entrepreneurial to get a job without a higher degrees at the moment . In a few years time you'll be able to nail a job in DS simply because it'll likely be more pervasive in every day SaaS products and it'll become yet another thing you do as a dev that isn't strictly part of your job title.
Bedon292 18 hours ago 1 reply      
To tag on to this question a little bit. If someone wanted to teach themselves, even without the purpose of getting a job. What books / references would be recommended?

I saw a mention to David Barber's book in one of the threads here, but what else?

DrNuke 1 day ago 0 replies      
Bum on a seat using the Python free tools as a blackbox and the internet as a reference then? In most business cases it would work just fine but employers want to buy the most they can in advance, that's why degrees as a filter. Your best shot is showing up with one or more interesting, unheard case studies to gain attention.
michaelalexis 20 hours ago 0 replies      
anecdotal, but Jesse Anderson is a world class big data expert, former Cloudera, etc. and my understanding is he is entirely self taught: http://www.jesse-anderson.com/
dpflan 22 hours ago 0 replies      
How do you plan to study? Have you created your own curriculum or will you be following one you've found?

Like this Open Source Data Science Masters: http://datasciencemasters.org/

darkxanthos 19 hours ago 0 replies      
I'm a lead data scientist and I don't have a degree. I do have programming/technical chops though which helped a ton.
orasis 17 hours ago 0 replies      
Machine learning is the new electricity. There will be tons of positions available.
badjasper 20 hours ago 1 reply      
I have been working software and IT engineering for almost 35 years. I'm self taught and, never took a college course until about 5 years ago. I have not been out of work for many years now and, the reason for that is the fact that most companies desire people who can hit the ground running. College degrees and books are fine for getting the basics but, what you learn in college is FAR different than what is in the real world. Companies want people who have been in the trenches and learned with "Trial by fire".

If you want to get a start as a self educated person in IT then, learn what you can on your own and then reach out to contracting firms. Get a few entry level contract gigs under your belt in order to pad your resume with some experience and then move up the ladder.

rezashirazian 16 hours ago 0 replies      
Learning something you like is never a waste of time.
ElijahLynn 18 hours ago 0 replies      
Nothing is a waste of time so long as you learn from it.
muninn_ 1 day ago 0 replies      
It depends on what else you're doing. If you're a Scala dev and regularly work with something like Spark and Hadoop you could probably find an entry level data science job at a non-FB/Google company because your programming and framework experience are much needed. But if you're just a Java dev and you're taking an Udemy nanodegree or something you would have to know somebody or get very lucky.

It's possible to maybe help another team and sequel that into a data science job internally, but outside, forget it.

qubex 1 day ago 3 replies      
You seem to assume that the only use for knowledge is garnering employment: this is patently false, as you could easily learn something and apply it for your own pleasure in the non-professional domain.

P.S. It's called statistics.

iamacynic 22 hours ago 0 replies      
i fell into an ML consulting gig that was very lucrative once.

something to ponder: you just have to know enough to actually deliver on something management wants, and know more about it than everyone else at the company.

Ask HN: Critique my company
48 points by asbestoshft  22 hours ago   71 comments top 47
johnwheeler 21 hours ago 3 replies      
Your developers are smart - they don't want to shake the tree. They know that even though you say you want constructive criticism, there's a good chance you'll resent them for giving it to you, so they take the safe road.

Ask the ones who leave, but wait 5 months until they're comfortably settled into new employment. You can bet they'll give it to you straight, but you might not like that either.

reckoner2 20 hours ago 3 replies      
How much time are you giving them to prepare an answer?

If a senior member of the company scheduled a meeting and then asked me on the spot what I would improve about the company I wouldn't be able to give any good ideas.

If instead they sent me a note saying that in three days they would like to meet with me for twenty minutes, and that during this time they would like to hear my thoughts so far about working for the company and to please think about ways in which you think the company can improve. I would be able to provide many ideas in this scenario.

brudgers 21 hours ago 0 replies      
My suspicion is that the silence reflects the company culture (and perhaps the larger culture depending on where the company operates). Some elements that may be in play (but I am imagining based on very little information):

1. The formality of the process.

2. A lack of previous informal conversations. The first time the boss shows up in a new hire's office, a good strategy is often to keep one's mouth shut.

3. Only asking new hires. A sophisticated new hire may realize that they do not know the big picture. Other new hires may not want to throw their team 'under the bus'.

4. The homegrown Google docs and in-house libraries are all "somebody's baby". And if they were a priority problem, then the founders would have fixed them. They haven't, so what is the point in mentioning something that obviously will not change.

My random internet advice:

1. Come up with a real plan to fix the problems everyone knows about.

2. Ask everyone how to improve the process, not just new hires.

3. Build a culture of trust.

Good luck.

rezrovs 21 hours ago 0 replies      
A previous CEO used to hold breakfasts once a month. It was really informal with a mix of people and a wide variety of work related topics got discussed. We could ask him things and he could ask us things. The setting made it really good for breaking down that communication barrier between juniors and The Boss.
dugmartin 20 hours ago 0 replies      
How about giving your new hires a few mostly blank pages with a letterhead of "My first two weeks WTF moments...". On day one give it to them and let them know you will take them out to dinner in two weeks to talk about what they write down. Let them know it is really valuable to you to have fresh sets of eyes on company processes and that there will be no negative repercussions. I'd then give them a few examples of what you would like to know.

Given all that I still think you won't get much feedback until you've done this a while and the current employees let the new hires know that there are no issues with them telling you that things are wrong.

meterplech 20 hours ago 0 replies      
I am not the founder of my company, but I ask the same thing of new hires (it's probably easier to give ideas to the non-founder). One thing that has worked well for me has been to say "One of my favorite things to hear from a new hire is what we could be doing better. You have the perspective of someone who has been elsewhere and have fresh eyes, and don't just accept things that aren't working. One example of something that isn't working is X. Another is Y. Besides those, can you think of other ways we can make the company better?"

That way you start by being self-critical, which makes people feel more open to complaining.

Btw, remember if you ask this... you have to follow through to _fix_ some of these problems or you can lose trust. Only ask if you really do want to hear feedback and action on some of them.

zhte415 2 hours ago 0 replies      
Use an external agency to give truly anonymous 360 degree feedback for everyone in the organisation.

This can get you get to the roots of problems. Take their advice on administering.

From what you stated, it sounds like the company is in a hierarchy power structure where others don't want to stick their head out too much.

At only 20 people, to have this problem sounds like a problem. Getting an external consultant to do some investigation seems to make sense.

aphextron 21 hours ago 2 replies      
Feedback needs to be anonymous or it will always be worthless. Few people have the courage to point out even blatant truths to their employer. Just set up an email that anyone can submit to anonymously.
mixmastamyk 20 hours ago 0 replies      
I've worked at a few places where the products were mature and sophisticated enough that it too me six months to get a handle on them and start to become truly productive on implementing improvements. Before that time I felt like a deer in the headlights.

Sounds like what is happening here.

AshWills 19 hours ago 0 replies      
It's great that you set time aside to have a 1-to-1 with new hires but I personally think a few weeks is too soon to be asking new hires that particular question. Not to mention it also depends on personaility types; you may have an employee who is fairly comfortable answering that sort of question with complete honesty. But more often that not, you will find that they probably haven't had chance to get up-to-speed with their work environment or gain a thorough understanding of how the dev team operates.

You would probably get more benefit by asking questions that are more related to company culture, such as, how they're settling into the team, how they find the team morale/company culture, who in the team has provided them the most value so far. Those type of questions would hopefully help the new hire understand that you care about the culture at the company and also helps build a more personal relationship, which consequently will build trust between you and your employees to allow them to truthfully answer your initial question a few months later when they are more embedded into the team.

Definitely keep up the regular engagements with new hires though, despite not necessarily receiving the answers you're looking for.

chrisbennet 21 hours ago 0 replies      
I could see that if you were hiring inexperienced developers but it seems pretty strange otherwise.

[1] Are you hiring from a pool of developers who used processes/tools that are the same or inferior to what your company is using? In other words, your company is already excelling compared to their previous experiences.

[2] Could you be hiring from a pool of developers who have been previously conditioned or selected to "keep their heads down"? From the outside looking in, the finance world seems pretty rough and tumble. The geek/nerd response to being with a bunch of jocks is be to stay quite. [I'm a geek/nerd in case that can be taken the wrong way.]

[3] Lastly, honest feedback requires either anonymity or trust. Trust is tough. A single case of a guy getting marched out by security when he told his manager "I'm not happy with my salary." trumps all the other times a manager tells someone, "If you're not happy, come see me." Heck, seeing someone marched out by security for any reason destroys pretty much any trust in management. If your new hire worked a place like that before, it's understandable that he might be reticent to trust his new company.

nzmsv 13 hours ago 0 replies      
There's little point in complaining about stuff if it's never going to get fixed. That just labels one a complainer. Try rephrasing the question like this: if you could take 1-3 months away from your regular job to fix something in our infrastructure or codebase, what would it be? Then you can follow up by actually letting people do this. And there is no reason to limit this to new hires. Plenty of frustrations come up over time.
snarf21 20 hours ago 0 replies      
It seems like one or both things is not true. Your developers think that the tools work well enough and the system is stable enough that they don't think there is a need for arbitrary changes, meaning only you think there are issues.

Or, they don't really feel comfortable giving feedback about how to make it better. Maybe they already make such a good salary that they are afraid to risk it. In this case they are disincentivized from actually giving you the feedback.

Have you tried doing a hackathon week? No normal work except system operations but have everyone work on a new feature or streamlining of an existing process. Have you tried offering bonus for people who offer up new ideas and plans to improve the software and processes?

nqzero 20 hours ago 0 replies      
i suspect you're hiring the "wrong" type of developers. since you took the leap and founded a company, i'm assuming that you're fairly aggressive and at least at one point were willing to think outside the box. the developers you're hiring may be technically strong, but they likely don't have that same mentality. my gut is that "c++ work on windows and linux ... financial" is going to filter for this pretty strongly

this may be exactly what you need for development, but it'd probably be healthy to bring in some more precocious elements ... maybe as interns so you're not committed to a culture shift

tmaly 21 hours ago 0 replies      
I think if you had a way for all new hires to submit questions they have while learning the system, this would be a better way to go.

Let them know you are building a manual to help other new hires. Maybe even let Senior people add questions or answer it. This would be sort of like an internal StackOverFlow for just your company, but organize it as a manual.

So instead of them trying to identify what you should be doing better, they just inherently point out where they are getting tripped up in your process.

The only other similar thing that comes to mind is how Tim Ferris wrote about this method of maintaining a FAQ to automate the customer service process in the 4 Hour Work Week.

swsieber 20 hours ago 0 replies      
Fix one of your known issues. Announce you're fixing one of your known issues because you're hoping to improve the company. Make sure that it actually improves stuff, not just checking a box (ie. don't use a ticket tracking solution that's actually worse than your google docs).

I think employees at that point would be more willing to offer up requests for improvement.

Maybe do your issue tracking first, and set aside some thing (story points if your agile, time per week/month, etc), visibly there for process/structure/tool improvement in the issue tracking.

TheAlchemist 13 hours ago 0 replies      
You're asking the right question, but I suppose not in a right way. From my experience you need to show them that it's the company culture to challenge things in a smart and constructive way. To do that, you do nothing very formal, just sit your best guys with the newcomer, explaining how things works and why. And sometimes, criticizing the current stuff, but not in a authoritarian way - something like we know we can do better, just nothing really worked well or we didn't have time but now we do.

That way it feels much more like -> we have something we could do better, and the guys are trying to improve that, let's do that with them. While 'critique' immediately feels negative and kind of creates a barrier.

Mz 15 hours ago 0 replies      
Since you are one of the founders, you are a 900 pound gorilla. You asking them to their face is you putting them on the spot. This is not likely to go good places.

I submitted ideas at BigCo to their Bright Ideas program and basically got rejection letters and felt crapped on. Expecting me to not only see that something could be improved, but also provide a fully formed solution that would pass muster politically was probably just an exercise in how to make new people feel like they don't belong at all.

Let me suggest you come up with something like a suggestion box or constructive feedback box where you can at least hear "I see a problem with X and my (possibly off the cuff solution would be Y" so you are getting some kind of feedback.

Good communication is incredibly hard, much harder than most people seem to appreciate. Actual good communication tends to be a long, drawn out process. You need to foster the first step here of "I just want to hear what you think is going badly" and that requires trust, assurances that it won't bite them in the butt and willingness to really listen and take it seriously. All of that is extremely, incredibly hard to do. If you, as one of the founders, cringes or winces because someone said something not nice about your baby, you can expect that no one will want to say anything again. You will need to really work at making people feel not only okay but actively good about pointing out problem areas.

This runs against the grain for the vast majority of social experience that the vast majority of people have. "Don't rock the boat" is pretty deeply ingrained in most people. "Don't question authority" is another biggie. It is incredibly hard to convince people you really and truly want to hear how you can improve things.

So, start with finding some method other than one of the founders getting all up in their face to try to give them a safe and welcome path for tossing out ideas. Because this is not it.

cgrusden 9 hours ago 0 replies      
Hire me, I'll tell you - short of that, keep asking like a broken record at the end of every week. At some point they might break down and tell you -

Here's how I implemented what you're asking to my company:I would first ask how they are doing and how the project is going. And then I would ask if theres anything we could improve - the first few times, nothing. After that, they would tell me improvements (finally)

dmlittle 12 hours ago 0 replies      
I remember hearing about a CEO that was unable to get any feedback from the board of directors until the phrasing of the question asked shifted from criticism/feedback to advice.

People are worried of giving criticism because you're effectively asking them to rate/evaluate your performance. However, when you ask for advice you're either asking what the other person would do in your shoes or you give them an opportunity to boast about their knowledge. While the end goal is the same, at a psychological level, the perceived reason for the question is different.

hluska 19 hours ago 0 replies      
How senior are your hires in terms of experience? And, if your hires range from new grads to developers with 10+ years of experience, do you notice any difference between the two cohorts in terms of how much feedback they'll give?

I'm a sample of one, but when I was 25, I would have tons of feedback after my first couple of weeks in a company. Much of it was bad as I hadn't been there long enough to know why things were as they were.

Now that I'm 40, it takes more time before I have any meaningful feedback. I'm more comfortable with what I don't know, so consequently, I'm more comfortable reserving judgement until I know a little more of why things are.

That said, I have a couple of ideas:

1.) Schedule the 'feedback' session more than a few weeks into their job.

2.) Give your new hires some time to prepare. I think it's best to assume that individual contributors feel uncomfortable with spontaneous, candid conversations until they prove otherwise.

3.) Have you considered trying an anonymous feedback system and comparing the results?

azylman 19 hours ago 0 replies      
Just giving them a few weeks at the company before asking seems like a problem. After only a few weeks, they probably don't have enough experience to answer with anything other than their own biases.

For example: you call out your Google Docs tracking system as something that should be obvious. But that's probably not obvious after only a few weeks. Some companies (especially smaller companies) can get by totally fine with that, and if you've only been at a company for a few weeks, you don't know what kind of company you're at. If they tell you that your Google Docs tracking system is bad, they're probably just reacting to it being different than what they had before.

Anyone who responds with a long list of grievances after only a few weeks is probably the type of engineer that you _don't_ want on your team: it probably means that they're unwilling to evaluate problems and solutions within the current context.

itamarst 21 hours ago 0 replies      
There are different skill trees developers can have:

1. Implementation skills: can implement a solution, e.g. knows C++.

2. Problem solving: given a problem, can come up with a solution. "We need an API for X" -> can come up with a design for the API.

3. Identifying problems: can notice problems exist.

4. Teamwork.

(Probably other skill trees as well.)

Assuming confidence, trust and culture aren't an issue, it may just be the developers you're hiring lack the relevant skills to identify problems.

These skills are rarely if ever taught explicitly, so many programmers get by with just implementation skills, or just implementation and problem solving skills. As you realize, though, problem solving and even more so identifying problems are key to productivity (https://codewithoutrules.com/2016/08/25/the-01x-programmer/).

Maybe you should consider teaching these skills, or change hiring process to screen for them, or both.

fwefwwfe 11 hours ago 0 replies      
Managers always seem quick-witted enough to come up with justifications for anything, sometimes even preemptively declaring they don't want to hear about subject X. So why would I point out obvious things? And why not ask the other devs? You have lot more of them. Plus a week is pretty early. You could ask them every month or every other month.
rb808 18 hours ago 0 replies      
Its great to hear you asking about such things because normally no one asks and its a huge waste of experience.

I'd say a few weeks in a short time to get up to speed. The biggest problem is that lots of places are "different" and not just "better". Often I'd like to do things the way I did at my previous job but that could just be unnecessary - taking time to change and breaking everyone elses process.

I would ask more specific questions. Like if you want to improve CD - ask the guy what tool they used in their previous job and how well did it work.

Someone else mentioned monthly informal chats I'd agree. Over a beer after work you can talk about old companies and what your employees miss about them.

segmondy 14 hours ago 0 replies      
Start by critizing yourself. What I do before asking this question is point out our known flaws.

Hey, we have some issues here and here, this is how we are working towards improving it. For example, we could be doing a better job at writing documentation, etc, etc. What I love about having new developer join us is the new ideas they could bring on board, we are open minded to learning and getting better, from what you have seen so far, what can we do to improve? What should we try?

highd 20 hours ago 0 replies      
Make sure to really spend a lot of time explaining your setup. It's really easy for interviewees to nod and say sure even if you're going too fast for them.

Remember it's stuff you've seen everyday for 14 years, and these people have seen it for maybe 20 minutes. I'd suggest giving them some flow charts / high-level info either in advance or with 20 minutes of quiet time on-site.

The only people I'd expect to respond in the current setting would:

 1) Have really high natural intelligence to pick everything up super fast, 2) Be really confident in their skills in the relevant disciplines, and 3) Be really confident you'd take feedback constructively

Helmet 20 hours ago 0 replies      
Put yourself in their shoes. You're the founder of this company, it's your baby that I'm sure you're very passionate about and proud of, and you just sat down a relatively new employee and asked them to critique your company.

There's an enormous amount of perceived risk on their end as they have nothing really to gain, and everything to lose.

And I say perceived because it sounds like you're a good guy and are genuinely seeking honest feedback, but they don't know that, to them this whole thing might be a shit test and if they say the wrong thing they could get on your, the founders, bad side.

Spooky23 19 hours ago 0 replies      
> Prior to starting the company I worked at six different companies and outside of the first one, my first real programming job, I would always have lots of ideas in the first few weeks about how things could be improved. Some of my ideas were bad because I just didn't understand what was going on well enough but I like to think that some of them had merit.

Did you go to one of the company founders with problems and solutions?

I would be very wary of such an ask unless I had a pre-existing relationship with the person asking the question. You also may have folks telling your new guys to STFU.

JSeymourATL 21 hours ago 0 replies      
> Or I'm not asking it the right way?

Did you frame the conversation in advance with the new hire? Tell them - I want you to make a critical assesment of everything we do. We'll meet again in a month's time. I'll be looking for specific, actionable ideas on how we can do things faster/better/smarter. What would it take to grow 10%?

If new ideas your desired outcome-- formalize the process with a Quarterly Brainstorm/Review pulling together thoughts from the entire team. Then select the top 2-3 to work on. The process helps foster a culture of strategic thinking and innovation.

alanmackenzie 19 hours ago 0 replies      
Work on making people feel safe with the situation before asking for direct feedback.

A few examples of how this could be done:

 Give them more than a few weeks to get comfortable with you and the company culture. Give concrete examples of things that have improved due to employee feedback.
It's hard to offer better advice through a HN post but easy to observe in person. Perhaps you can hire an external consultant to help or ask a mentor or advisor to fill this role by spending a few days in your office.

kohanz 21 hours ago 0 replies      
I think for many people, especially junior to mid-level hires, a few weeks is not enough time to achieve the familiarity, credibility, and just general sense of belonging to feel comfortable sharing genuine critiques. I would expect only senior-level developers with a lot of experience and confidence, would feel secure in their responses at that stage (and even then, it depends on how receptive your culture feels). If you want genuine feedback at this early stage, have you thought about enabling it anonymously?
philippz 20 hours ago 0 replies      
Use a very simple tool to give feedback.This is how we collect feedback (internal and external): https://www.stomt.com/stomt

And it creates a great feedback culture as i can give feedback as a normal user or anonymously and i can even vote anonymously. The simplicity reduces the perceived effort and makes it more likely that someone gives feedback. The optional anonymity takes out the fear.

(Disclosure: I work for STOMT)

rejschaap 15 hours ago 0 replies      
The question is pretty big. There are so many things that could be improved on so many levels of your organisation. Where to start? Did you try asking more specific questions?

How about building up a relationship with the people first by having regular one-on-ones?

dharmon 20 hours ago 1 reply      
Be glad you hired savvy employees. Anyone who comes into a new company and starts enumerating everything they are doing wrong is a fool who will have poor career longevity. That's how we end up with shitty tech blogs from people who keep insisting they have the answers if just somebody will listen (cough Michael O'Church cough).

You need to put something concrete behind your words. One off-the-top-of-my-head suggestion: Have a few current engineers start working on some of your known problems as part of their responsibilities. It doesn't have to be 100% their job, just a "kaizen" approach is ok (improve some small part each time they use it). Let them know it will be part of their evaluations.

Now when you ask new employees point to these examples: "John noticed our tracking system was crummy and important issues were slipping through the cracks, so we offered to let him be in charge of re-vamping it."

Obviously you'll have to manage what you allow them to improve, and who gets to work on it. This idea isn't perfect, of course, but the idea is to show them you are serious about these suggestions.

X% of management is aligning incentives (X is some large number). Think about how to incentivize them to give the information you want, and how to remove disincentives. Money and responsibility / autonomy are the most basic incentives.

cweagans 19 hours ago 0 replies      
When you have that meeting, let them know that there is an anonymous suggestion box in some public location and that you really, genuinely want to know what can be improved. They may not tell you to your face, but maybe if there was some anonymous way to handle suggestions, that might be more effective?
bjornlouser 19 hours ago 0 replies      
"There are even some pretty obvious flaws..."

List those on a piece of paper and have the new developer add one item.

maverick_iceman 10 hours ago 0 replies      
Why don't you run anonymous surveys so that employees can give feedback without fear of repercussions?
zeeshanm 19 hours ago 0 replies      
One thing to note why you'd always have all these ideas and others don't is because you're a founder and they are programmers. It takes a certain level of conviction to voice your ideas. Not every programmer has that conviction.
orbz 20 hours ago 0 replies      
Have you tried being self deprecating a bit? I've found that ripping on yourself/the company a bit will show them you're not afraid of the truth and will loosen some inhibitions.
blacksmythe 20 hours ago 0 replies      

 >> Any ideas how we can get feedback from our new developers on how to improve?
Hire outspoken developers. Dan Luu would be an excellent choice:


pvaldes 20 hours ago 0 replies      
You probably need an independent critic that do not has nothing to lose in the process.
apris 20 hours ago 0 replies      
"Give a man a mask and he will tell you the truth" I don't usually speak up because i'm too afraid that the other person might not take it constructively. Create an anon survey, that might help. It always does :)
bvi 20 hours ago 0 replies      
Come up with a way for them to provide anonymous feedback.
i336_ 21 hours ago 0 replies      
Some random thoughts from someone who is not in the industry but has read too much HN:

The devs in question may have real issues with confidence. Straightforwardly saying up front that their feedback is hands-down not going to get them fired or affect their position or compensation may help a lot here. Explaining how to give feedback, eg by focusing on objective criticism and avoiding personal attacks (and similar common-sense sentiment) may also help.

It may also be useful to think back to when you'd just started at the six companies you mention, and spend some time remembering the mindset you had - in particular the divide that was present between the ideas you had and the difficulty, if any, that you had with actually sharing these ideas. For these new hires this same exact situation is playing out with your employees.

Maybe the company culture could focus more strongly on feedback from the start, instead of abruptly posing the question a few weeks in. It should be integrated into the onboarding, possibly be part of the hiring, etc etc, so that new hires associate "$company == feedback". That may help with the intimidation factor.

Hopefully an approach like this results in a steady stream of feedback from the start.

You're right that ideas developed when adjusting can sometimes have a kind of 20/20 clear vision, but that they can also be bad because they don't fully grasp all the implementation details or culture or whatnot.

It may be a good idea to wait two months+, or until the person in question is consistently producing output, not much surprises them and they seem almost bored, to start looking at some of the less likely-sounding tidbits that come back. I can tell you that if you waited say six weeks before asking me anything I likely would not spit out any useful metrics due to nerves and the newness of everything.

One idea that could be interesting is to start a feedback page somewhere (perhaps a wiki page - or a Docs document everyone can edit would be a start), and add everything you can think of. The hope here is that since there's a bug list, a) there's now an already-started thing so people don't have to overcome that intertia, and b) people will go "wow, this is fairly scathing" and won't feel so bad adding to it. :P

I was also wondering about making feedback anonymous; this could be a good last-resort, but I wouldn't immediately try this: "oh, that was me" is too likely to come out at the most (needlessly) awkward of moments, it promotes a "you can't be honest" mentality (!!!!!!!!), etc. Like I said, very last resort, not recommended.

This topic reminds me of the "customers don't know what they want" problem - asking customers directly what they want in terms of new features or improvements can sometimes simply not produce actionable results, or result in false leads that can take an extremely long time (and in some unfortunate circumstances a lot of money) to discover aren't the core issues. Figuring out how to find the core issues can be tricky. (I unfortunately don't remember where on here that I read about this, but I do remember there not being any simple solutions; if anyone has any links I wouldn't mind remembering!)

solipsism 20 hours ago 0 replies      
I agree with those suggesting you might want to look at your company culture. If, when you look around, you don't see a multitude of people working on improving every facet of your process, then you may have built a "heads down, don't rock the boat, worry about now screwing up my own job" kind of company. This mindset will pervade the management chain. And it will be a huge impediment to growth.

If in fact that's what you've got, you need a massive change. Promote based on demonstrated positive impact to the entire company. Encourage risk takers, discourage blame. The people you want working for you would never work at the kind of company I describe above.

ccvannorman 20 hours ago 0 replies      
I have always felt like I would appreciate candor in people talking to me about my business. But every time I have offered constructive criticism it has not benefited me. So I stopped doing it.

Not sure what the solution is, but I feel like building a culture around "best ideas win" and rewarding the process of coming up with improvements and implementing them could be good. You could seed this at first with improvements you were already trying, but when people see "Hey, Joe Schmoe came up with this great idea and now we do it" would be a boon to your improvement culture.

Ask HN: LinkedIn got my Google Contacts how do they do that?
40 points by tlogan  13 hours ago   18 comments top 13
jmathai 12 hours ago 2 replies      
It's not required for you to give LinkedIn access to your contacts for them to know you're connected with someone else.

* Your friend may have given LinkedIn access to their contacts and now LinkedIn will start spamming you to connect with them.

* You have a friend-a and friend-b who both gave LinkedIn access to their contacts. You're in friend-a's contacts but not in friend-b's. LinkedIn can assume there's higher than random chance that you know friend-b. LinkedIn will probably try to spam both of you to connect with one another. Why not, right?

* You have a friend-a and friend-b and friend-c who all gave LinkedIn access to their contacts and you're on all 3 but none of them are in each others. LinkedIn will probably try and spam all 4 of you to add each other.

There's prolly plenty more and a team at LinkedIn focusing on just this. Anyone else care to add clever ways to infer connections?

gregschlom 12 hours ago 0 replies      
Some of these people may have allowed LinkedIn to scan _their_ contacts and you were one of them.
tyingq 12 hours ago 0 replies      
Other commenters mentioned it could have been constructed in the reverse direction.

But, they did have some dark patterns you might have missed: https://medium.com/@danrschlosser/linkedin-dark-patterns-3ae...

aphextron 13 hours ago 0 replies      
You must have unwittingly opted in at some point. Linkedin is really scammy when it comes to harvesting people's contacts and sending nonstop notifications. They prompt you to add all your device and email contacts at every chance they get.
tlogan 13 hours ago 0 replies      
I think I figured out this. I'm occasionally using outlook on my iPhone to access my Gmail. And Microsoft owns LinkedIn so this makes complete sense ...
JacobiX 12 hours ago 0 replies      
They can use other people's contact lists (users on LinkedIn who shared their contacts) and you surely will be on some of them.
Nanite 12 hours ago 0 replies      
Also their definition of "google contacts" is extremely broad. During the time I allowed LinkedIn access to gmail contacts, I suddenly noticed a ton of my neighbors in my building being suggested to connect to. People I never had any direct mail conversations with. Turns out our tenant mailing list was sent out once by accident as CC vs BCC, so it seems even the CC field contents count as "contacts".
jaimex2 10 hours ago 0 replies      
CyanogenMod/Lineage Android roms have a nice feature called privacy guard. I always use it on all social media apps because I know they pull my contacts and upload them.

The feature basically just gives back empty results when the app tries to access, I wish it just fed it back garbage made up accounts.

rdlecler1 12 hours ago 0 replies      
I gave LinkedIn access to my contacts. What they also did was to send an email referencing every sender email I use (and I use several dozen all from our corporate domain), effectively spaming new and existing contacts with the same request. They also seem to have sent emails to any email that's ever been on a thread... won't be doing that again...
fragmede 12 hours ago 0 replies      
Also, considering that bit about unroll.me that came out recently, are there any (non-linked-in) apps that you've authorized to see your contacts? Those services may have sold your address book to LinkedIn.
Spooky23 12 hours ago 0 replies      
Outlook has a connector to LinkedIn that can get mysteriously enabled.
sepbot 12 hours ago 0 replies      
They got my contacts because several years ago my Android phone upgraded to a new version that had removed the privacy guard feature. OTA, never again.
I_am_neo 11 hours ago 1 reply      
Don't use what you don't trust
Ask HN: Is there any mature development platform for Augument Reality?
6 points by sammyjiang  11 hours ago   1 comment top
shusson 3 hours ago 0 replies      
What about Android or iOS?
Ask HN: Google Doc email virus?
475 points by eof  2 days ago   207 comments top 58
ademarre 2 days ago 4 replies      
I reported this attack vector to Google back in 2012. They awarded a modest bounty, and then a few months later I heard this:

> "We're deploying some abuse detection and reactive measures to deal with impostors that might try to abuse this sort of attack. Given this, we do not intend to perform validation that the URL matches the branding information."

That last part was in reference to one of my proposed mitigations, which they chose not to implement.

Here's the discussion on the IETF OAuth WG mailing list from that same time period: https://www.ietf.org/mail-archive/web/oauth/current/msg07625...

mailinatorguy 2 days ago 5 replies      
Mailinator here:

Yes, we sent the inbox to a blackhole but keep in mind, Mailinator does not and can not actually "Send" any email.

It's a receive-only service. As always, any email "from" @mailinator.com has had it's reply-to forged (which is pretty trivial).

Also - even before we blackholed the email, it's unlikely any email in that inbox (i.e. hhhh..) was read. Each box has a 50 email limit (FIFO) which was immediately overwhelmed. You couldn't click fast enough between seeing the inbox list and clicking an email.

Mailinator is simply a "receiver" in all of this but we have no indication our servers were otherwise involved.

jakob223 2 days ago 4 replies      
EDIT: According to a Google representative on the reddit thread, this application is now blocked. If your account was affected, you no longer need to do anything.

If you fell for this, changing your password is not the right solution - you want to log into your google account and remove permissions from the application.

https://myaccount.google.com/permissions?pli=1 should show a list of apps connected to your account.

Also, if you fell for this, you sent a bunch of emails to people like the one you received, so maybe tell them not to click.

hemancuso 2 days ago 4 replies      
It's a pretty nasty one, since it uses their standard OAuth flow with an app "Google Docs" to have users grant full access to their email and contacts.

1. I can't believe Google doesn't have basic filters to disallow developers from registering an app named "Google Docs"

2. Perhaps there should be some more validation/limits associated with allowing apps on the platform that can gain full access to email. A secure email account is the One True Source of authentication in the digital world. Google should make it way harder for people to get tricked into granting full access to their inbox.

btym 2 days ago 1 reply      
I love how simple this worm is. They haven't exploited any security holes (other that looking like Docs), it literally just asks for full access to your email address.
aub3bhat 2 days ago 0 replies      
Its a malicious OAuth client (multiple clients?) that calls itself "Google Docs" and fooled user into giving access to read emails, while pretending to show as if it was needed by GDocs itself to access a Document, enabling launch of among other things password resets on other websites.

the root problem seems to be that the identity of OAuth Servers is not authenticated/clearly shown, i.e. a malicious app can claim that its name is Google Docs even though it is not endorsed by Google.

IMPORTANT NOTE: If you are running any website that has "Reset my password" it might be used by attacker, since even though the attacker does not have access to password, the attacker had access to email inbox. Thus the email password reset flow will allow attacker to compromise other websites that rely on Gmail account for password resets.



philip1209 2 days ago 0 replies      
Wow, Hired.com appears to have emailed all of their users about this. Must be spreadinq quickly. Note that they advise compromised users to change their password - which other comments indicate does not solve the issue.

Below is the Hired notification.


Important: Email Phishing Alert

Hi <first name>,

It has come to our attention that some of our users may have been hit with a Google Docs phishing scam. It appears that this scam has been spreading throughout the internet today, and is not isolated to Hired or our customers and candidates. If you want more information, you can read about it here[1] or here[2].

If you receive a Hired email that says that someone from Hired has shared a Google Doc with you, please validate with the sender before clicking the link or doing anything else.

If you think your account may have been compromised, be sure to change your password immediately.

We apologize for this interruption to your day. Please let us know if you have any questions.

Thanks, The Hired team

[1] https://www.theverge.com/2017/5/3/15534768/google-docs-phish...

[2] https://gizmodo.com/a-huge-and-dangerously-convincing-google...

yurisagalov 2 days ago 1 reply      
Looks like this is fairly widespread.

This is what the attack actually looks like: https://twitter.com/zachlatta/status/859843151757955072

sudom82 2 days ago 4 replies      
Source code of the worm: https://pastebin.com/raw/EKdKamFq

Edit: How I got this:

Someone on reddit went to their site when it wasn't down, and downloaded the files linked in the page's HTML. I just posted it here.

This isn't the full source code. There was another PHP file visible on their website that unfortunately isn't visible anymore.

coleca 2 days ago 1 reply      
Considering how easy it would be to filter this out, why has Google allowed it to continue spreading within their own email network? Obviously they have no control over what goes on outside of Gmail/G Suite, but inside their own network, they should be able to setup a basic filter to stop anything TO: hhhhhhh@mailinator or whatever it is. I received this email (but did not click the link) in my Gmail account from another Gmail user, so it never left the Google network. From the reports here it looks like it is still spreading even though Google disabled the app.

With all of Google's machine learning expertise, how is it that this got past all of their SPAM detectors? It took me 2 seconds to hover over the link and see it was a crazy link that ended up at a domain called google.pro. Really? One of the world's largest and most advanced email systems couldn't figure that out?

alexlongterm 2 days ago 0 replies      
We wrote a guide for google suite admins on how to lock down their domain. Oauth and phishing are major threats and google could do much more here https://medium.com/@longtermsec/more-tips-for-securing-your-...
jmcdiesel 2 days ago 0 replies      
I work for a fortune 500 (wont disclose) but we just shut off email for our entire organization due to this...
rst 2 days ago 0 replies      
slrz 2 days ago 2 replies      
Hi, I'm Google Docs. Would you please grant me access to your Google account so that I can read, send, delete and manage your mail, as well as manage your contacts?
aaronmiler 2 days ago 1 reply      
Our support team is getting spammed a lot from our customers. We're in the education space, and it's spreading pretty quick.

On initial inspection the URL looks harmless, but it's got some malicious params in there, mainly

It appears to request read/send access to your email, and then spam all your contacts

gigabo 2 days ago 0 replies      
Reported as a service disruption on the status dashboard:

> We're investigating reports of an issue with Google Drive. We will provide more information shortly.


wjke2i9 2 days ago 0 replies      
Things like this are bound to happen when you have centralized systems controlling everything with full control of the information (no zero-knowledge storage like email/document/communication encryption). You're essentially trusting one third party provider with everything in your life/business/organization.
wmblaettler 1 day ago 0 replies      
To see the list of apps connected to your Google Account: https://myaccount.google.com/permissions
seanp2k2 2 days ago 0 replies      
sergiotapia 2 days ago 0 replies      
Just received one as well. Source is Hired.com - according to them:



Hi Sergio,

It has come to our attention that some of our users may have been hit with a Google Docs phishing scam. It appears that this scam has been spreading throughout the internet today, and is not isolated to Hired or our customers and candidates. If you want more information, you can read about it here or here.

If you receive a Hired email that says that someone from Hired has shared a Google Doc with you, please validate with the sender before clicking the link or doing anything else.

If you think your account may have been compromised, be sure to change your password immediately.

We apologize for this interruption to your day. Please let us know if you have any questions.

Thanks, The Hired team

M1233mjm 2 days ago 0 replies      
When can we expect a public statement regarding the phishing scam and the fallout? We all know it used our accounts to forward itself to everyone in our contact lists, but what about our emails? Have those also been forwarded/harvested? We need to know this to know how to react.
mrpound 2 days ago 1 reply      
Same here. Several emails so far from different seemingly random companies and individuals with clearly malicious Google Docs requests w/ a suspicious param in the oauth request in the link:


yeboi 2 days ago 1 reply      
Here's an interesting case that I encountered (~1:20pm maybe):

1) I clicked on the link on my phone's email app. It looked super believable since it was coming from a person I was expecting a Google Doc invite from. I allowed access to "Google Docs" and then the page hit a 502 gateway error.

2) I tried it again on my computer by logging in, and this time, when the page was loading (after I allowed access), I saw the website was not legitimate (based on the url) SO I immediately closed the tab.

Here's the interesting part: None of my contacts got a "Google Docs" invite from me - meaning I didn't "send" any mail. Any idea how I can see if the person behind this has my emails too via API requests?

os400 1 day ago 0 replies      
G Suite customers have been asking for the ability to whitelist OAuth clients/scopes for their domains for years, for this exact reason. So far, Google hasn't really given a shit.

I guess that might finally change now.

packetized 2 days ago 0 replies      
Eagerly awaiting the response from Cloudflare detailing their response, since all of the domains associated with this so far appear to have been hosted with them, or at least fronted by their service.
choxi 2 days ago 0 replies      
I got one from "DocuSign": https://twitter.com/choxi/status/844949531896655872

The link went to a page that looked like Google Docs and asked for my Google login, but I noticed the domain was wrong so I didn't sign in. I tried the link again today and it looks like Chrome does flag it as a phishing site now.

AdmiralAsshat 2 days ago 0 replies      
My brother called me about 15 minutes ago to tell me this hit his student e-mail as well.

I'd be curious at the postmortem how quickly this thing spread.

codedokode 2 days ago 0 replies      
As we saw one should not let users decide who can get access to their email account. Users are easily fooled. Google should review all applications wanting such access manually.

Though this is unrelated to the topic I think it would be good if Google reviewed apps permissions in Google Play too because users are bad at this.

EdwardMSmith 2 days ago 1 reply      
Feels like "I love you" all over again.
discreditable 2 days ago 0 replies      
G Suite admins: you can check for compromise by going to Reports > Token in the admin panel. A compromise looks like this: https://i.imgur.com/Dm0NNTn.png
_pergosausage 2 days ago 1 reply      
The very same thing happened at my university. The sender is hhhhhhhhhhhhhhhh@mailinator.com
TimButterfield 2 days ago 0 replies      
There is also a Docusign phish email going around. I received a couple of them yesterday from mail2world, though signed by [company name].onmicrosoft.com for that user's business email address. They purported to be from people I knew.
Clubber 2 days ago 1 reply      
The bad thing about centralized internet is it makes some mail servers much juicer targets than the decentralized mail servers of old.

I decided gmail wasn't for me when I read they harvested your emails for ads. 1GB in 2004 sounded so enticing too!

If you are technically savvy and have access to a static IP, I highly recommend setting up postfix/dovecot and registering a domain. It's fairly straight forward for technical people. You can have it setup, soup to nuts in an hour or two. There's online docs everywhere.

It's probably not going to be as secure as a gmail, but it's a much smaller target. Most internet providers will give you a static for an extra $5 or so.

ethn 2 days ago 0 replies      
I just received one of these as well. They seem to get their targets by compromising a single user and then by monitoring the people who are viewing the same Google Docs as the infected victim had in the past.
garyfirestorm 2 days ago 2 replies      
This happened to me. An unknown person from my organization shared a Google doc. I didn't open it, and replied by saying 'what is this about?'. He said he didn't send any gdocs :|
jaimehrubiks 2 days ago 0 replies      
The only tricky thing is not seeing these weird permissions. Google may block naming an app "Google Docs" but someone could always trick it with "Google Docs." or whatever
spydum 2 days ago 0 replies      
Next up, prepare for the inbox onslaught of every CASB provider hawking their wares and telling you all about the googpocalypse and how they are uniquely prepared to solve it!
aaronmiler 2 days ago 0 replies      
Just checked the malicious link again.

It looks like Google removed (at least one of) their access tokens

Checked the URL containing:


Markoff 2 days ago 0 replies      
so what should i tell my mom to avoid her Gmail being hacked in future same way? (it wasn't hacked since they had only English language audience this time)

don't click on unknown links which take you to Google login page and never approve access to your data in any dialog?

cloudaphant 2 days ago 1 reply      
Any clues what this was trying to do? I suppose we have to wait for Google to publicise what went on once OAuth had been granted.
sleepychu 2 days ago 0 replies      
Is there mitigation against deploying exactly this attack another way?
killa_kyle 2 days ago 0 replies      
This is burning through our office right now. emailing all clients! diablo!
d2kx 2 days ago 0 replies      
Yeah @SwiftOnSecurity warned about this, lots of people/orgs affected
mathattack 2 days ago 0 replies      
I got a few, then it died. Perhaps Google now recognizes this as spam.
cassie942 20 hours ago 0 replies      
there was a warning may 4 about a massive google doc phising scam check on.digg.com/2py2k5g
caydo00n 2 days ago 2 replies      
Anyone know how far spread this is? it just Hit our school emails
cassie942 20 hours ago 0 replies      
warning may 4 of massive google docs phising scam check on.digg.com/2py2k5g
pmcpinto 2 days ago 0 replies      
I received it too
sudom82 2 days ago 1 reply      
edit: accidentally double posted

double edit:1. replied in above comment.2. dunno. first time using HN, accidentally submitted twice when I was on comment posting cooldown I guess.

MediaSquirrel 2 days ago 0 replies      
Same here
patmcguire 2 days ago 1 reply      
Yes, it's all over.
petervandijck 2 days ago 0 replies      
Yes, same here.
ownc 1 day ago 0 replies      
My teacher said not to open this email.
pinaceae 2 days ago 0 replies      
amazing how large this is, our company just a massive wave of those. all from "internal" addresses.
ben_jones 2 days ago 0 replies      
We have an entire generation that's been trained by big tech companies to instantly click agree, share, like, etc., buttons. This is only going to get worse.
Ask HN: Did your life as a parent affected your life as a developer?
154 points by johngorse  1 day ago   127 comments top 64
linkregister 1 day ago 1 reply      
As your kids get older, and especially when they enter school, a large part of the evening will be spent by them doing homework. Their weekends will be spent more with friends and doing activities (organized sports, etc). You'll have more time to yourself.

In the meantime, enjoy your family time because your kids won't always want to spend all their free time with you (they'll have friends and hobbies to compete with you).

Make sure to exercise. So many on HN experience health problems that originate from inadequate exercise. 30 minutes per day should be sufficient.

8 1/2 hours of sleep per night seems to be an hour longer than what I would expect would be necessary, but if you're getting woken up by a baby then that is good time budgeting.

kemiller2002 1 day ago 3 replies      
Having kids taught me how to use every spare minute I have. I'm a single parent with 2 kids, so I have no back up to take care of them if I am busy with something else. Half of my free time is spent with my kids, so I have to make everything else count. My process looks a little chaotic, but I carefully plan out what I'm going to do, and when I need to do it by. My entire day is on a mental schedule. Unless I deliberately want to, I waste very little in "screwing around." Everything is mentally prioritized and evaluated.

Having kids emphasized what I already learned in the food industry, don't do silly extraneous tasks ever, and do things as fast as possible without compromising what I do. I rarely wait and do one thing at a time when I'm trying to get stuff done. For example, I'm normally cooking one meal and prepping the kids lunch at the same time.

Unless I absolutely need a break, I don't watch T.V. idly. It maybe in the background, but I'm normally only half paying attention. I turn on CC so I can read the text, and half listen. Watch videos to learn something? You can read (I've heard 4 times) faster than watching a video, so I almost always take that route. The one thing I don't do is listen to podcasts in the car. That is reserved for NPR to catch up on world news.

Most of the time when people want to meet dealing with business, I demand an agenda, then I decide if it's worth it. I've been known to be ruthless at work with this. I focus my life around things like this.

bryarcanium 1 day ago 1 reply      
My partner and I pretend we're divorced.

We noticed before we had our first that our friends who were divorced with kids actually got out once in a while, because they shared custody. So we have what amounts to an oncall schedule - certain days I'm 100% in charge of kiddo, certain days he is. There's some exceptions for commute stuff - daycare is closer to my work- but this means you sleep in on your weekend day off, and you can schedule nights to game and hang out with friends, etc.

Most of the time we aren't out; kiddo is fun. But the difference between hanging out with a kid and being in charge of them getting their needs met is pretty significant.

Re: commute, I'm hauling the kiddo in with me on my bicycle, dropping her off at daycare, and heading to my work. It's exercise and commute together and I love it. It's about 40 minutes one way, so I have to be careful about not over training, but it's awesome otherwise.

Edit: We also do side projects on our off nights. And we pay people to clean/do the yard work, which also does a lot for free time.

mystique 1 day ago 0 replies      
This is my story basically for many years. I've found having side project is even tougher as a mom than a dad (SO has been better at carving time for himself than me).

What I've found works is to be consistently working on same side project over time, dedicate some me-time and set small goals. Instead of trying too many new things, stick to same side project for months at a time. Also "book" a few hours every 2-3 weeks for myself and go work at a Starbucks instead of staying home. Finally set small achievable goals; what I would want to do in 1 day, spread that over a month.

nosequel 1 day ago 0 replies      
Same boat. Here's me:

 1. My side project is my life. I don't use the computer at all outside of work. I play with the kids, do stuff around the house, spend time with my wife. 2. I moved to being remote full time after killing myself commuting in SoCal. My enjoyment of life has increased tremendously. 3. Like others have said, I don't waste any time. I read Twitter/HN when I'm taking a 15 break in the morning and in the afternoon, but otherwise I work when at work. 4. I pick up new technologies while at work. Part of why we are paid so much is we have to stay on top of what is the latest and greatest best practices. This is like Doctors reading medical journals for their particular area of practice. 
Overall, you don't get to do your kids over again. If you miss something it is gone. There is no undo/redo cycle. Everything else for me is secondary.

meheleventyone 1 day ago 0 replies      
Full time working with two young kids aged nine months and three years. I'm lucky my commute is a fifteen minute walk. Most days I wake up between 6-7 depending on the youngest. Our kindergarten is right next door so I drop the eldest there on the way to work. Usually work 0820-1620. Pick up the eldest on the way home. Then cook or watch the kids whilst my partner cooks. Hopefully both kids are in bed and asleep by 2030-2100. Spend an hour chilling with my partner then bed.

I've only really managed side projects during my paternity leave whilst the baby was sleeping or during a period of gardening leave. That's more than prior to kids as I spent most of my free time climbing, skiing and going out. We also rebuilt our house last winter and finished the interior off over the past year. This spring/summer my 'side project' is a lot of manual labour sorting out our garden.

I've always learnt new stuff at work and have been lucky enough to get work that has been pretty new and different each time which obviously helps a lot.

unfocused 1 day ago 2 replies      
I'm like you - full time job, wife (who also works full time), 2 kids under age of 6. I too am tired some nights but some things have changed (for the better):

1. Changed jobs to a balanced work/life job. 2. No longer a developer, but still in IT.3. 12 minute walking commute (no buses, cars, or bikes)4. Moved downtown - smaller house than most people, but as noted in #3, walking commute to pretty much everything.5. My side projects are my kids, as they are very young and are not independent by any means. I've dabbled in tiny project which was python to grab Scotch prices. But that was 6 hours. So yeah, not much time. Also, my "heritage" home is a bottomless pit of maintenance, but kind of fun as the kids get involved.

I would say either you work remote, or work from home 1 day a week if you really like your current job. Is it possible to find a closer job? You can gain at least 1.5 to 2 hours hours a day right there.

kerrsclyde 1 day ago 0 replies      
You have to accept that your lifestyle is going to change. It really kicked in with me when my kids started school, the evenings became shorter and now with them as teenagers there is basically no time between them going to bed and me turning in.

I cut down my workload dramatically to spend more time with them and I don't regret it for a minute, they grow up so fast. I look at pictures only taken a couple of years ago and the change in them is vast.

You might look to commute less but working at home just didn't work for me, kids get home at 3:30pm and forget trying to concentrate after that. I can still find time in the mornings before they get up at 7:30 if I need it.

Enjoy the ride, for me (and we're all different) my family is more important than any side project.

vbsteven 1 day ago 6 replies      
Try to get rid of the commute. That's two wasted hours every day.

I have a similar 1hour commute but I only need to be in the office 1 day a week. On the other 4 days I get up at the same time (5:30-6:00am) and I work on my side projects until 8am when I bring my daughter to school and my home-work day starts.

ddorian43 1 day ago 1 reply      
1. Be good. 2. Be good enough to remote. 3. Move to someplace cheap (or be born there). 4. Work remote part-time while making a killing at the same time(compared to local). 5. Profit time with your new/current procured family.

My plan basically. Only step 5 to go.

roryisok 1 day ago 0 replies      
Like a few others here, I also work remote. Zero commute makes a big big difference. It means you can step away from work and instantly be at home. It also means you can see the wife and kids during coffee breaks. Also, instead of sitting in a canteen for your lunch hour you can spend it with the family. In my case, I'm lucky enough to live close to the sea so when the weather is good we can spend lunch on the beach.

I work on side projects in the evenings, and at the weekends. Having kids has impacted free-time, as it always will. In order to maximise productive time, I gave up video-games entirely.

up_and_up 1 day ago 0 replies      
So, I have 3 kids, 8,6, and 3.

> I commute every day 1 hour in each direction.

I know some people are stuck in this situation but I would really recommend finding something closer or getting a fully remote job.

I have had a 100% remote job for the past 5 years and it has made all the difference. I wake up, get the kids breakfast and then head over to the standing desk and get to work. Since we homeschool I always eat lunch and dinner with my kids. Working remotely is the only way this would be possible.

> where do you take time for your side projects or studying new technologies

I do this mainly on the job now, currently learning/implementing Terraform and studying for AWS exams. Take on new challenges at work etc. I also freelance, where I am exposed new tech and challenges.

> full stack developer

There are tons of remote jobs for that skillset, I really encourage you to look elsewhere.

indytechcook 1 day ago 0 replies      
The phrase "Having kids changes everything" is true.

I have 3 kids (8, 4 and 2). When I reflect on the past 8 years my most enjoyable experiences have been first with the kids, wife and friends.

I took steps to work from home after my first child was born. This has allowed me to work at a high demand start up and spend quality time with my family. Now I get to take "wrestle breaks." Best 20 minutes of my day.

Kids coupled with dieing grandparents help you to think about the big picture. I will not be one of those people on their deathbed wishing I spent more time with my family. Know what you have before you lose it.

ashark 1 day ago 3 replies      
I have three young kids. My experience has been:

1) sleep (a normal amount, not extra)

2) being an OK parent

3) a house that is almost always fairly clean

4) side projects/learning

5) friends

6) a relationship with your partner/spouse that's doing OK

7) actual solo leisure time

Pick four. :-/

[EDIT] Oh, and "staying halfway in shape" comes out of your "actual solo leisure time" hours or possibly "friends" hours if you have the right kind of friends for that.

snadal 1 day ago 0 replies      
Father of two (aged 4 and 5) and running an small company of 14 developers.

Before they were born, I always reserved some tasks for weekends, and spend several hours coding at night during workdays.

It took me almost three years to realise that this was absolutely not compatible with family. I used to "steal" sleep time instead of family time, so I ended sleeping between 2 and 4 hours a day.Even productivity was good, I was always tired and in bad mood.

While it was really difficult to change long term habits, I work now from 9.00 to 17.30 with 15 minutes commute time, I dedicate most of my non working time to my kids and wife, and I am now a extremely happy person, and also the people closer to me :)

And productivity has grown because I can focus on the really important things, both at home and at work.

jarpschop 1 day ago 2 replies      
Sorry for asking the pessimistic question, by no means do i intend to be a troll, but don't you think that it is irresponsible bringing children in to a world where you can't even take the free evenings after working 8+ hours and giving your best? (because you need to "stay competitive or something"). The developer culture of living to work (instead of the other way around) and being totally cool about it is something that still surprises me. I understand that you like coding (me too), but not having time to do anything else (not even raise a kid, watching a movie, reading a book or just resting) appears to you as something completely normal. I simply don't get that ideology (i mean, is like a type of slavery where the slave's hobby is precisely and just what he/she does for work). I say it as someone studying computer engineering.
abeyer 1 day ago 1 reply      
I know that everyone's situation is different, but I really don't get people who accept that kind of commute time unless it's something you want or you have no other options. (I know people who like to drive and get their only "alone time" in the car on the commute, so it works for them, but they tend to be the exception.)

If you value your time at $100/hr (probably low end of the spectrum for a skilled dev in most of the US), that comes to an opportunity cost of $4,000/month you're losing to driving back and forth. And that doesn't even start to account for the actual costs of driving, nor the mental energy of dealing with doing it. (I want to bang my head against the steering wheel after 30 mins in traffic, and then spend at least twice as long decompressing and not productive after that.)

I know that's very different than $4k cash for most people, but it's worth thinking about

watty 1 day ago 0 replies      
Having kids greatly reduced my free-time to work on side projects (or actual work). Getting married reduced my ability to move anywhere anytime or take risks freely. Buying a house with endless projects has also reduced my free time. If I was single and without children I'd probably be making more money at a different company. But I wouldn't be as happy.

Every choice that reduces your time spent developing affects your life as a developer. It doesn't mean you can't be a rockstar as a single dad with 5 kids but it may be harder. Ultimately you have to balance things that make you happy and work.

souprock 1 day ago 1 reply      
I have 10 kids, soon to be 11, and I homeschool.

So... that's how open source projects go to die, and the major reason why I no longer maintain procps. This was painful, but family comes first.

The concept of "quality time" is broken. You can't squeeze life into a few spare moments here and there, and you mostly can't schedule it. You have to live it, being there for the skinned knees that can happen at any moment. There is no substitute for being available.

Side projects are limited to things that can be done with kids. That changes as they grow.

Studying new technology is something I can do at work. I help invent it actually, and I dig into a wide variety of things, so that's fine. Maybe it is different for web developers; ouch if that is the case. I do low-level stuff.

A big difference is that I don't live or work in a "proper" city and haven't since I got married. I tend to live in the sort of place that is borderline big enough for a commercial airport, with perhaps 33,000 to 100,000 people at a density that is well below anything in the Bay Area. This lets me afford to live near work, and it means that there is little traffic. By car, my worst 1-way commute was 15 minutes. It's now about 3 minutes.

Compared to your hour-long commute, that 3 minutes is pretty much a rounding error. It's like I get an extra 10 hours of life per week. You have at most 4 hours for family on weekdays. Imagine if you had 6 hours instead.

I get that big-city life has more entertainment, but you don't seem to have time to take advantage of it.

zer00eyz 15 hours ago 0 replies      
Ok, I'm going to make a suggestion that others may find silly and may not work for you...

You have two hours a day where you can't do anything but drive and think.

Audio notes are your friend, take them while your in the car.

What I find when I do this is that I don't really need to reference the notes after I take them! After reading this article ( http://www.atlasobscura.com/articles/pointing-and-calling-ja... ) I think I understand why now.

When I get the time to work on my own stuff I find that I'm much more efficient with it than I would be if I was just sitting down to stare at a screen, and I can accomplish a lot in 15-20 minutes a day on side projects, or research, or ....

gallamine 1 day ago 0 replies      
My family is my side-project, and I have to work daily to be content with that.

Which is to say, I give up side-projects in favor of them.

n1vz3r 1 day ago 0 replies      
I have two kids, one 6 years old, and another 4 months old. Since I cannot spend more time in the office, I'm required to be more productive. I discovered "less is more" principle this way - by putting in less time, I actually achieve more. Also, at home, ususally I have at most one hour to spend coding my semi-hobby project. And this way, I discovered that it can be a very productive hour. Another upside of having constantly inquiring "explain me like I'm five"-type son is that content of my brain's RAM is instantly swapped out several minutes after I pick him at kindergarten. Bottom line: I rest better; spend less time; I'm more productive. (and earn more money)
achou 1 day ago 5 replies      
I'm a founder looking for ways to make my next startup family-friendly. I'm a parent of two sons in SF so I know what it's like. A grab bag of ideas so far:

- Allow parents to bring babies to work (0-6mo)

- Locate in suburbs where parents live instead of in the city

- Hire remote employees who work from home

- Establish a culture of taking an office break around 4-5pm then resume at 8pm for a couple hours

- Do social events during the day instead of after hours

- Suspend email delivery certain hours, such as 4-8pm, and on weekends until Sunday afternoon

- Same as above for real-time chat for most employees (some exceptions for things like sales)

- As an exception to above, have on-call schedules planned way in advance

- Flexibility on holidays to help synchronize with school schedules

Other thoughts?

batter 1 day ago 0 replies      
When you have no time for your family they become someone's else side/main project. Sometimes it's good. But mostly - not. That's why i don't have side projects besides my family.
feistypharit 1 day ago 0 replies      
I moved from full-time to stay at home dad with some consulting and side projects on the side. Family is #1, everything else is secondary. However, wife works, is well paid, and is a national expert in her field. We're In the Midwest.

Kids are essentially another full time job, with varied and unpredictable overtime.

itsoggy 1 day ago 0 replies      
I have children with communication and social issues (ASD).

My side projects have changed from web apps things to:

Learning makaton.

Making and laminating pictures (PECS) so my youngest can use them to communicate.

Attending various classes relating to ASD.

Fixing IT and Telecoms for the various local charity organisations that support us.

You just have to play the hand your delt the best you can.

DharmaSoldat 22 hours ago 1 reply      
I'm a newish dad and full stack dev. I've found that what's been most effective for me, aside from spending (admittedly, far too much) time coding in the evenings before sleep, is making a concerted effort to share whole-day responsibility of the kids on weekends. I'll take the kids on one day, my wife will take the kids on another day. We trade off during the week too so we can both have large stretches of uninterrupted time.

Exercise (and for me, meditation) are important balancers too - don't neglect them for the sake of coding, you'll find that you just get burnt out.

thatwebdude 22 hours ago 0 replies      
Before I had kids my time management was absolute crap; so getting this together was key, and nearly made my days 25 or 26 hours long.

Your schedule seems about right. There's definitely worse ones out there. Assuming you have young kids, they will become more independent with time to allow you to have time back for yourself.

My schedule is nearly identical; although I do have to admit I'm about an hour later than you for everything.

To become a semi-successful parent (is that even a thing? We'll see in 18 years) who still gets shit done I've learned to simply utilize every idle moment. It allows me about an hour of extra time for something during the weekdays, and makes my weekends more efficient. I tend to sacrifice my own sleep when I really need more time for something and it usually works out okay, as long as I don't make it a habit for the week (or I'll feel sick, tired, or just unwilling to over-perform).

Right now, I'm going through a home renovation, so the process is slow but it's considered my "side-project". The nice thing about it is that I can involve my kids in it to keep them occupied and still get a little bit of something done.

For keeping up with tech, my pace at work is slow enough that I can continuously evolve the software I write with new technologies and best practices. Before I started where I'm at, I was at a much more fast-pace place which was fun and exciting; but absolutely damning to my home life because of all the other stuff I've got going on. (And nothing angers Mrs. and Kids more than coming home at 8 or 9pm frequently).

noir_lord 1 day ago 0 replies      
My GF and her little boy moved in with me recently, that was a shock to the system, I knew on a conceptual level how much time kids took but damn was I underestimating the effort required.

I try to keep him entertained as much as possible so that she gets some time for herself even its just a soak in the bath while we play xbox or something.

It's been fun and hardworking but I dont regret it either.

Fortunately they share custody so it's usually half week here, half week at his dads.

That recharge time is important and something a lot of parents never get.

__d 1 day ago 1 reply      
I get up at 5:30am, shower, eat, and start at 6am. Work until 5pm, and then pick up my kid from daycare. Bath, cook dinner, kid's bedtime at 8pm. Do another 2-3 hours work.

Work from home, so no commute. Work 6-8am Thursday, and then rest of the day off to look after the kid. Usually do a couple of hours on a weekend night, depending on what my partner's doing.

I try to do side-projects, learn new stuff, etc, at nights. It doesn't work too well because I'm exhausted.

I switched to remote hourly contracting so I'd be able to take the Thursday off, but trying to fit in a full week's work on the other days is exhausting. Losing the commute was great; the social isolation and loss of work/home separation sucks.

I think it's just tough.

ryanwaggoner 1 day ago 0 replies      
Being self employed has made things a lot easier for me, but two years into having kids, I'm still trying to break the bad habit of thinking "I'll get it done tonight / this weekend."

My wife and I do split things up in ways that make it easier. So we each have a morning off, a weeknight off, and we split the weekends so we each get 1-2 blocks of 4 hours. This is obviously a luxury that is easier with two parents, one kid, etc.

As my daughter turns two, I'm amazed at how quickly her personality is emerging and developing. I've spent a lot of time thinking abou a blog post I read years ago by some founder or investor who pointed out that you really only get about a decade with your kids. From toddler to early teen years where their lives start to diverge and they have their own need for independence. That really drove home the point that this is an incredibly fleeting time, and I have to pay attention and be present, because once it's gone, it's gone forever.

laughfactory 1 day ago 0 replies      
Even without your insane commute, your description of your life sounds like mine. I'm a data scientist by trade, married, and father of three young ones (5, 2, and 4 months). My side project is writing (I've always wanted to be a published author), and it drives me looney always being so tapped out and exhausted. I try to enjoy family life while they're young because I know they'll become more independent as they get older, but man, when I'm too tired to do anything when my "alone time" rolls around after I get the older kids to bed, and when it seems my wife and I rarely get 1:1 time, it really makes me cranky and resentful. So the writing doesn't get done, and neither does any continuing education.

What I'm trying out is getting to bed earlier (hey, if I'm too tired to do the things I value then maybe I should just sleep!), and I'm starting to exercise. I've been told that exercise helps 1) sleep better, 2) feel better, and 3) gives you more energy. We'll see how it goes!

But yeah, try to figure out a way out of that commute. Some people are able to turn their commute into productive time, but I never had the knack. My understanding is that this phase is just that, a phase, and as the kids get older it will get easier in some ways.

mrbonner 1 day ago 0 replies      
I had the same thoughts as you do now regarding not having enough time for my development career. My advise: spend as much time as you can with your kid! You will not be able to replay those moment when he/she grows up.
ak39 1 day ago 0 replies      
This was my life till 2011 when I renegotiated my contract to work mornings only (5 hours). That gave me afternoons off with benefit of stress-free commute home.

It wasn't easy to get the arrangement but I started off with two days of the week at first and then upped it to all five days.

If you can tolerate reduction in income, that's a respectable arrangement to start off with.

lucidlive 1 day ago 0 replies      
My life is close to yours. I have 2 young kids but I work from home. But here's how I swing it: I wake up at 4:00am and work till about 6am when my kids wake up. Then I'm back at it at 7am when my wife takes over with kids. I then work till anytime between 3pm and 5pm.

That's about 10 to 12 hours a day. It's a lot but I'm usually working on contract or my own business so I love my work.

I don't really believe in side projects. I believe in taking a plunge.

fusiongyro 1 day ago 1 reply      
Your biggest problem is your 2 hour commute. Move closer to work or find a job closer to your house and you'll have a huge increase in free time and energy.
agentultra 1 day ago 0 replies      
Partner, 2 kids, full time job. I get home, play with the kids, wash them and put them to bed. I usually work on side projects most evenings and spend an evening or two a week with my SO.

I usually budget 3 - 4 nights a week to side projects.

I saved most of my time by choosing to work remote/close-to-home. I don't make as much as some of my friends who live in the big city or out on the West coast. However I get to wake up at a reasonable hour, walk my kids to school, and stop by the caf on my way to work to catch up on the local gossip.

From about 8 - 11, 3... sometimes 4 nights a week I work on my side projects. I used to do more open source stuff but right now I'm working on a book [0] and testing the waters with a GraphQL service [1]. I've also committed myself to recording one, short, album a month.

It sounds like a lot but I guess being a parent I've learned to juggle and be effective with what little time I have. I tend to pre-plan my activities and force them into habits, rituals that sort of thing.

Some days I'm too exhausted. But that's ok. Take a little time off and go to bed early.

dyarosla 1 day ago 1 reply      
Just a comment on your side project: replacing the font would help tremendously.

Super hard to read through listings in a font not suited for legibility.

torte 1 day ago 0 replies      
Of course it affects my life. Now obviously the rest of the day and most of the weekend is either spend at work or home with my son (he is 3, so still needs more attention than older kids).

On the other side, I was never really into side projects in the evenings, simply because I needed that time to cool off and relax a bit. Without that time I would quickly burn out. The best is (and if you can) is to make your "side project" your day job.

The question is still if it actually affected me as a developer in the sense that I can not do the work anymore? No, it did not. I leave work earlier but that's pretty much it. I don't feel less productive than before. Actually I even think I am more productive since the time is more limited. It is all about what you make of it I believe.

mixmastamyk 1 day ago 0 replies      
Not much time, eh? ;-)

Well, I see one obvious thing to cut without sacrificing your work or children, and that is the commute. Get yourself a gig that you can walk/bike in a short amount of time. Choose it well and you'll get exercise too.

Now, I know what you're thinking right now, I can't! Because of X, Y, and Z. Sure, understood in the short term. But, ask yourself where you want to be in a year or two?

If you start looking now, you can find a closer or remote job, or move home to be near a great job---over the medium term. Want to know how I know? Because, I've been doing it for twenty years. So when people say, "oh, I couldn't possibly" BS is called quickly. Good luck.

godot 1 day ago 1 reply      
Having gotten married recently, things have already changed quite a bit, before even having kids. I have a similar job and commute as you do.

I also recently had the opportunity to change jobs and made it a point to join a place that doesn't believe in working long hours and staying late. (I used to work in an infamous place for long hours, then I left that to cofound my own startup which was again long hours even if more flexible.) My team here is totally fine with my 9:30-6:00 schedule with working from home 1 day of the week. This is currently how I balance it. I predict having kids will throw a wrench at this scheduling again and I'll have to re-adjust. As for side projects, it's pretty much fitting it in spare minutes on the train commute, when the wife showers, etc.

buf 1 day ago 0 replies      
I was the CTO of a series-A backed startup. My entire life changed when I had my kid, and I decided to quit my job and live cheaply in eastern Europe for about 6 months. You can read about it here: https://medium.com/@buf/experimenting-with-retirement-ef6ab0... tl;dr - I retired, and it was amazing.

Since, I've come back to the States and I think I've figured out a good balance. I work remotely now, so I can spend time with the family and watch the kid grow daily. Sure, I won't be a CTO anymore the next few years, but it gives me time to take on a reasonable amount of work.

I think I'll do this for a few more years.

rapsacnz 1 day ago 0 replies      
Your commute is costing you around 10K per year, just for direct costs such as car and fuel.Then you have indirect costs such as: -lost time which you can probably put a dollar figure on (esp if you are using some of that time for a side project that may one day have value)Then finally there are the intangible costs: -lower fitness, meaning more sickness, more medical bills. -a less fullfilling relationship with your wife and kids -stress of the commute, also contributing to poor health.

Basically you should go to your boss, if possible and ask to work from home - you could even take a 10K pay cut and it would make no difference financially.

I've worked from home for 10+ years and it's great. You should do it if at all possible.

jaboutboul 1 day ago 0 replies      
Forget about developing and side projects. How do people keep up with learning new things and staying on top of things. Its very hard to learn new tools, frameworks or even stay current in 30min/night, and when youre not exhausted.
petercooper 1 day ago 0 replies      
I get a lot done. Having more responsibilities means I focus more and dilly-dally less. I focus on what's important. What I lose in hours, I gain in ambition and focus.
xLFC 21 hours ago 0 replies      
IMO the silver bullet is to find a job that eliminates your need for side projects and studying new technologies. I'm not saying it's easy, but it's definitely not impossible.
wheaties 1 day ago 0 replies      
From 5:30am-9pm my hours are for work, commute, family and chores. My wife usually falls asleep at 9:30-10. If I feel rested, I'll hack for 30min-1hr most nights.

On the weekend, we both make sure the other has "my time." It's important. I used to get 2hrs+ a night to hack. My productivity at work wasn't nearly as good as it is now. I don't miss it. I like family life way more. My life as a developer has never been better.

rvanmil 1 day ago 0 replies      
I struggled with this for a while too, but I quickly realized spending time with the family is a lot more fun than side projects.

Also, I'm surprised no one has suggested daylighting [1] yet, it can be a reasonable option if your employer pays you to deliver instead of keeping a chair warm for 8 hours.

[1] https://news.ycombinator.com/item?id=14217849

sunpazed 1 day ago 0 replies      
I have three kids under 5 years, and I've been more productive than ever. Mostly due to the fact that my wife and I aren't spending time socialising after hours or on the weekend.

Once the kids are in bed, there's not much to do on a Friday or Saturday night. As a result, in the last 5 years I've built and launched several small side-projects.

misterbwong 1 day ago 0 replies      

1. Prioritize, prioritize, prioritize,

2. You'll never have enough time.

3. Timeshift and batch up tasks

4. Trade money for time.

Father of 2 kids (3 and 6mo) here. RUTHLESS prioritization has been critical in helping me reach my goals. Having the two kiddos has taught me to be absolutely ruthless and efficient with my time. Prioritization is the key and saying no is something you need to get used to. I'm a people-pleaser at heart so this has been a difficult transition but, after accepting that I can't say yes to everyone and everything, I've been able to make more progress towards my goals.

There aren't enough hours in the day to do all that you want. Period. You need to take a hard look at every single activity you do and decide whether it's worth spending time on. If something isn't in the Top 3 of your priorities for the day, drop it and don't even consider it. Trying to do everything ends up wasting time because you end up having to half-ass everything. Time is precious.

Timeshift and batch tasks. Pre-plan what you can so that you can be present for whatever it is you are doing. Meal plan your week in advance so you don't waste time deciding what to cook. Decide on what you're going to wear for the week in advance to speed up your morning routine. Have your kids do the same (mine actually likes it).

Learn to delegate to trade money for time, at least temporarily, if you have the resources. Hire a gardener, hire a house cleaner, hire a VA, outsource any tasks that can be outsourced. Deliver food if necessary. If I said you could buy an extra hour a day for $20, would you? I certainly would (and do).

Side note: HUGE props to the single parents out there. Don't think I could handle two w/o my (awesome!) SO.

billdueber 1 day ago 1 reply      
A lot of parents really, really like having kids. The ROI on having children is, for them, so self-evident that they don't really think about it. But that's not true for everyone, esp. if you were old enough to be pretty fully-formed by the time you became a father. Kids come at a huge cost. You're exhausted from dealing with them, and in the meantime you're probably not exercising, and you're eating like crap, and, inevitably, just plain getting older.

Step 1 is to reconcile your ideal of who you'll be in the future -- what job, how smart, how influential, etc. -- with the resources actually available to you now. I had to downshift considerably.

Your kids aren't going away, and you're not going to be able to sustain what you're doing now until they get old enough. You need to make a change, and soon, because if you don't you're going to end up wondering how and why you mortgaged your life to your goddamn kids.

I have three boys: 5, 8, and 10. For my first six years of having kids, every time someone told me to "enjoy them while you can" I wanted to punch that person in the throat. I knew they were right, but there are days when that's just not even in the realm of possibility.

There are a lot of parents who are tired, and sick of walking on dropped cereal, and miss being able to pick an actual restaurant that serves actual grown-up food. But there's also a huge societal more to not talk about it, or to aways end with something like, "But it's so worth it," or "It's the hardest job I've ever loved," especially for women. But while it's almost certainly "worth it" for the majority of parents the majority of the time, there are going to be days when it's just NOT.

The clich is that "The years are short, but the days are long." It's true. In hindsight, the fact that I have a ten-year-old seems insane -- how could it have been ten years? What the hell have I been doing for the last decade? Do I even remember life before kids -- what it was like to just have a wife, to set my own schedule?

At the same time, every night at 6:30pm I find myself asking, "How can it only be 6:30?"

I spent a good number of years just basically resenting the crap out of my boys, which is about as healthy as you might guess. I hated dealing with my kids, hating myself for hating dealing with my kids, and knew I'd hate myself later for not enjoying the young-kid experience while I could. I, my kids, and my wife all suffered.

Now I've got therapy and some drugs and a CPAP, and things are better. Not every day, but most days. Well, many days.

Kids completely take over your life, at least for a while, and it's almost impossible to see the light at the end of the tunnel. Your job -- your JOB -- is to figure out how to enjoy them now so that the sacrifices are worth it to you.

thatwebdude 21 hours ago 0 replies      
Maybe this side project obsession we all have stems from most things being easy to us? Too many people trying to be Tony Stark?
fivestar 1 day ago 0 replies      
You can do that indefinitely, or until you suffer a psychotic break. Either way, you'll be fine.
bsvalley 1 day ago 0 replies      
Yep. That's why when you reach this milestone, you ain't care about the name of a company, if the product is hot or not. All you care about are

- ability to work from home

- not too competitive environment (otherwise you'd get put aside by young people)

- good health coverage

j_s 1 day ago 0 replies      
Related discussion 2 months ago:

Ask HN: Developers with kids, how do you skill up? | https://news.ycombinator.com/item?id=13816627

naviehuynh 1 day ago 0 replies      
I am not in such situation (yet), but if I were you, I would probably learn new technologies just for fun. Side projects require some level of commitment to yield results, which is admittedly hard when you have kids already.
tmaly 1 day ago 0 replies      
I have the option to take the train to work, so that gives me a solid 2 hours a day to hack on my side project.

I would have to say my time hacking on a project is more focused with kids. You have to be if you want to get things done.

bsvalley 1 day ago 0 replies      
Lifecycle of a software engineer:

10-20 years old = if Zuckerberg then stop here, else:

20-30 years old = Best perk, best company, best project

30-40 years old = Work from home, short commute, less work

40-60 years old = QA or maintain legacy code

TYPE_FASTER 1 day ago 0 replies      
Some nights I work on something else from 8/9pm to 11pm/12am. Other nights I recover. Weekends are tough to get time.
Steeeve 1 day ago 1 reply      
I keep reading about software developers who sleep every night and work 8 hour days. Both are completely foreign concepts to me.
peterarmstrong 1 day ago 1 reply      
Pro-tip: Figure out a way to work from home some days. You'd save 2-3 hours. Give one to your company and one to yourself.
hosh 1 day ago 0 replies      
I work remote at an early-stage startup. My wife recently regained custody of her 12-year-old daughter. Our daughter is on the Autism spectrum, and when combined with emotional issues and an entitlement attitude, this has not only consumed my time, but my wife's as well. It's a full-time job for two parents.

My "side projects" encompasses more than than software programming -- martial arts, meditation, biking, etc. I used to be able to do a lot of things, but I can't anymore. My step-daughter comes home around 15:30 and it tends to go on until around 21:30. More if there was a meltdown or some sort of family drama (which, in the past few months have happened frequently, but thankfully, is trending less now). I've had to take over getting her up in the morning -- both my wife and my wife's mother have had significant trouble getting her out of bed, showered, dressed and ready for school. Likewise for getting ready for bed.

I've had to accept that my life and lifestyle has changed. (I thought I was prepared for it; I wasn't). I've had to work through a lot of things myself, including periodic, arising feelings of resentment that is toxic to a child growing up. The meditation helps, but ultimately, I had to accept change and the fact that I am not as in control of my life as I used to be.

I had also been working with her a lot on homework -- to stop doing her math and reading like she is mashing buttons while playing a video game. I quickly found that there are even more basic wisdom and skills that my daughter never learned: what it means to be a part of a community; what responsibility means; what respect and speaking respectfully means. We've also been trying to wean her off of the meds and learn how to process her emotions.

Over time, I've been coaching her through different things. Our current theme is "organization" -- how to organize her time, how to organize her things, how to check things off a list by herself instead of "mashing buttons" (she has a tendency to try something to quickly satisfy what she perceives as what my wife or I wants instead of thinking things through, or methodically checking through things). The idea is to transfer more and more responsibility for herself to her rather than helicopter parenting and enabling this attitude of "parents are service providers". It takes time, it's bearing fruit, and this process goes at its own pace.

And yeah, at the end of the night, I'm exhausted too.

Some five years back, I got into an internet flame-war with someone about this. He was working 60-hour weeks with kids, trapped in his job, and I was talking about side-projects. I was single with a lot of mobility. Joke's on me.

brockers 1 day ago 0 replies      
If it didn't then you are probably doing one or the other wrong.
pfarnsworth 1 day ago 0 replies      
Yep, same here. Having kids completely destroyed my productivity. I now understand why people like to spend money on apps like Farmville, because it's mindless and you don't feel stress. I feel the same way with reading reddit and HN at night, because I'm too tired to think about reading. If I pick up a book, I'll fall asleep within about 15 mins. So it's hard.
Ask HN: Would You Hire an Udacity Nanodegree Graduated?
12 points by Itzcoatl  19 hours ago   11 comments top 5
usgroup 4 hours ago 0 replies      
I'm myself from a background irrelevant to computing. My honest opinion is that for commercial coding, it doesn't matter. It's become fashion to call everything "engineering" but really programmers in the main are more akin to plumbers.

Within the population of programming jobs, some are actually pretty serious, actually require solid CS basis and a scientific approach. If I was hiring for that sort of job, Id look for higher degrees and experience. Similarly with data science type stuff. When it gets hard, you need the right background.

sealord 19 hours ago 3 replies      
I'm heading engineering at a startup that works on making the likes of Apache Cloudstack and Openstack work for telecom behemoths. I studied Russian at university. I've been writing code for the last 7.32 years. Personally, I don't care about the nanodegree, so long as the person demonstrates a natural affinity for writing code. That's all that matters to me.

I don't know where you're based right now, but I'd say most recruiters across the world wouldn't understand the concept of a Udacity nanodegree. Most of them don't understand that you really don't need a piece of paper stating that you can write code; recruiters simply don't understand that it doesn't matter whether the person is even a graduate or not, if s/he can write code.

I'd just tell the person to keep trying. I kept trying, and I got lucky with a media house that was okay with hiring me to write code without a relevant degree or experience. I'm sure I can't be the only one to get lucky.

mindcrime 16 hours ago 0 replies      
Here's the thing - there is NO one single credential which, in and of itself, would "make me hire you". In my mind, a hiring decision involves analyzing many "features" each of which is weighted differently, and contributes to the overall holistic view.

So, if I were hiring a candidate, would a Udacity Nanodegree weigh in their favor? Absolutely. Would I hire them if they had no other formal credentials at all? Absolutely, depending on all of the other factors. But as for that matter, you can ask me "would you hire somebody with no formal credentials at all" and the answer is still "absolutely, depending on all of the other factors".

marktangotango 8 hours ago 0 replies      
Where the lack of a degree hurts you is down the road, many companies will use you lacking the relevant degree as ammo to pay you less.
psyc 9 hours ago 0 replies      
As someone involved in hiring, I'm trying to get an idea of what you know and what you can do, not where you got the knowledge.
Ask HN: Have you got a Knuth cheque?
8 points by Tomte  1 day ago   3 comments top 2
whitten 15 hours ago 1 reply      
This brings up the point that the Knuth cheque as a marker of your status is probably worth more than the amount of the checque.

So Don Knuth might be writing the checks but they may not be getting cashed.

AnimalMuppet 20 hours ago 0 replies      
Nope. The closest I came was finding a bug in the original STL, but Stepanov didn't do checks. (He did give me three versions of a patch in two hours, though. I was impressed.)
Ask HN: Should I get a U2F key?
5 points by adamwoodetc  14 hours ago   3 comments top
idlewords 12 hours ago 1 reply      
The big advantage of a U2F key over other forms of 2FA is that it gives you stronger protection against phishing. Phishing attacks that would give me control of your email with other forms of 2FA don't work if you use a security key.

Unfortunately, phones still don't support a physical security key. But you can still use the authenticator app there. On your laptop, U2F is a big step up.

Whatever you decide, you should not use SMS as your second factor. U2F keys, TOTP (the authenticator app) and push notifications are all significantly safer.

Ask HN: Do you make physical prototypes? Of What?
3 points by wand3r  17 hours ago   2 comments top 2
wand3r 15 hours ago 0 replies      
I'm curious if anyone would actually be interested in 1/8 scale:

- plywood

- 2x4s and 1x3s

- currogated metal

- PVC Piping

- roofing material

- garage door & track

I am thinking about biting the bullet and buying materials and milling my own as well as experimenting pouring concrete in small amounts and maybe making a drywall type material. Idk if other people would even want this, or similar stuff; but it's like $100 for some lousy balsa wood stuff and for that money; I'd rather cut and mill wood myself w/ calipers for proper scale

Edit: I also mean a bulk set to actually make something large. The bulk orders I have seen of full sized material go to a job site are for example; 2x4s arriving as a pallet of 104 pieces of lumber (stack of like 13 8 beams high) which could lay a lot of 16" on center walls. Each piece at AC Moore/hobby lobby is at best about 0.50 so just that is like 50 bucks!

hector_ka 9 hours ago 0 replies      
You can use foamcore ,or isolation foam from Home Depot
Ask HN: Should I talk to a reporter about my last company?
4 points by ckirksey  19 hours ago   8 comments top 7
zhte415 2 hours ago 0 replies      
Write it down and save it up into a book you might write one day.

Even if you have no idea of writing a book now, writing it down now would probably encapsulate a bunch of details that will have faded years from now. And at that point you'd be in a good position to decide to share it or not.

coralreef 16 hours ago 0 replies      
Devil's advocate: if the place was bad enough, you could save potential hires a lot of time and pain.
blakdawg 17 hours ago 0 replies      
Sounds like lots of downside risk and very little/no upside for you.
siegel 9 hours ago 0 replies      
A vindictive employer could sue you for defamation. I really don't see why you'd take that risk.

Does the company have Glassdoor reviews? Are those reflective of your experience? If so, then there's a warning to new hires out there already, at least.

lsiebert 17 hours ago 1 reply      
You can ask them to keep your name out of it as a condition of talking to them.
DamonHD 19 hours ago 0 replies      
I wouldn't, in case someone not liking what you've said has money and chooses to get legally unpleasant. Years hence, you'll have a fund of after-dinner stories to tell instead.
pryelluw 17 hours ago 0 replies      
No, dont do it. Never talk to the press about anything negative. It will come back to haunt you.
Ask HN: Good jQuery source code examples
2 points by bizon  19 hours ago   3 comments top 2
ezekg 18 hours ago 0 replies      
WordPress's admin UI may be a good start: https://github.com/WordPress/WordPress/tree/master/wp-admin/...
redxblood 19 hours ago 1 reply      
I think that jQuery isnt something that yuo need to look for good code practices, rather its simply shortcuts to javascript functionalities.

Look at normal javascript pages, then try to rewrite them using jquery if you really want to learn.

Ask HN: What was your product's biggest marketing win?
23 points by mijustin  1 day ago   15 comments top 10
paulmatthijs 1 day ago 0 replies      
We reached out to everyone that ever did a review of a direct competitor within the last 4 years - we were very much last-to-market.

About 10% actually did a review of us on launch which gaves us a major boost. However, the ones that reviewed us a few months later are those with a long tail.

Reach out to those that love good products. Even if they have a small audience, it all adds up in the end.

spencerfry 1 day ago 0 replies      
Biggest marketing win for https://www.withcoach.com/ has been using our own product to create and promote free content.

Since Coach is an online course platform, we're not only giving people a demo of our product, but we're also providing value through content.

For example, we giveaway a free eBook on selling more online courses & digital products: https://coach.withcoach.com/level-up-your-sales

We also run a free email course on launching your next digital products in 10 days: https://coach.withcoach.com/10-day-product-bootcamp

Both have driven thousands of leads to our product.

JoshDoody 1 day ago 1 reply      
I have had two pretty big wins.

Pretty easy (results in days): Answering questions on Quora was a relatively easy, quick win. I answered a question on salary negotiation or job interviews every day for a month, and immediately saw a lot more interest in my site.

Harder (results in 90+ days): A focus on SEO has really paid off. SEO takes a while to build up, but once it's built up, it's pretty reliable traffic source. That means I can spend time working to offer more value to visitors so they'll stick around and come back later.

jasonkester 1 day ago 1 reply      
limedaring 1 day ago 0 replies      
For https://hellowebapp.com, it was running Kickstarter campaigns to promote the books. It's a really effective way to do a "pre-order" campaign for the book, start a lot of conversations, and start building my email list (not to mention getting a chunk of money that replaced a traditional advance a publisher could give.)

For https://weddinglovely.com, I work with small businesses and running the weddings blog has been our biggest marketing win. Our businesses send us content, which we publish, getting traffic and also cementing our relationship with the submitting business. We've also started getting significant affiliate revenue ($2k+ mo) from past articles we've written.

mijustin 1 day ago 0 replies      
OP here. These answers are great! Feels like content marketing is a big winner so far.

If you'd rather not comment on this thread, I've also created a quick survey here:


d_evyn 1 day ago 0 replies      
I set up a small product and self assessment tool for https://compassofdesign.com validating my target audience.

About 20% of my visible audience took part in the assessment and/or bought the product. I got a really good vibe of the people that are most likely to engage and who I should be focusing on.

Surprisingly, people that my content is reaching are further along in their journey than I had intended on reaching out to.

This has been my biggest result so far from my efforts

thomasrw 1 day ago 0 replies      
Writing, blog posts on https://thomasroest.com/ that lead people to https://linuxforwebdevelopers.co/
pryelluw 17 hours ago 0 replies      
B2B here: Cold everything. Then put them on a drip to keep warm if nothing happens quickly.

Be active not reactive.

codegeek 1 day ago 0 replies      
Yep. Inbound marketing. Let people find you. That is the most qualified lead ever.
Ask HN: Self Hosted vs. Gmail / Outlook?
60 points by zabana  2 days ago   63 comments top 26
grumph 2 days ago 3 replies      
Setting up your own email server will bring you into the wonderful world of big email corporations not delivering your emails until you subscribe to their whitelist with, for some of them, subscription fee.

Back in the time, I had this problem with sending emails from my private server to yahoo or microsoft (hotmail, live.com, etc...), both refusing to deliver my emails to their clients as I could be a potential evil spammer.

For the subscription fees, a few weeks ago I saw a price chart for <I don't remember which company, probably Microsoft> about how much you have to pay them depending on your situation and how many emails you plan to send to their servers. Unfortunately I didn't find this page again.

I think the best option is to go for a paid service with a good privacy policy. It will cost you a lot less in time and probably in money. Also, they will probably be more reactive than you in case of problem, and more aware about security.

unicornporn 2 days ago 1 reply      
If you're worried about privacy, I hope all your contacts use GPG. Practically none of my contacts know how to use that. Practically all of my contacts use Gmail and Outlook.com. That means all of my emails will end up in Google and Microsofts hands anyway. I'm sure they will build shadow profiles on me (especially since I'm a former customer, using the same domain alias on my new host as I did with them).

That being said, I recently switched to https://mailbox.org (they have a very good reputation). Mainly because I love the web UI it's an awesome service and I get CalDAV and CardDAV that works beautifully.

WA 2 days ago 2 replies      
Use a paid service. I use Fastmail. It baffles me every day, how HN is obsessed with Gmail as if there was no alternative and are willing to trade a minor improvement in comfort over having every email read, analyzed, indexed, profiled and put into the Ad machine. I'm also surprised that so many people use the web client and not a native client with IMAP.
corv 2 days ago 1 reply      
After years of self-hosting I finally switched to https://protonmail.com and I'm much happier for it.

Self-hosting is still possible nowadays but email delivery is an uphill battle. You can expect to write several major email providers to remove you from their blacklists even if your address and domain reputation is good.

VPS privacy and security is questionable and dedicated servers are usually expensive. Hosting SMTP from home is virtually impossible without a VPN to a "proper" IP.

Are you willing to spend the time to update all parts of your infrastructure on a regular basis? Are you certain you will keep up to date on recommended ciphers and protocols?

How is your data going to be secured at rest? If it's encrypted, how are you going to provide the keys during unexpected reboots?

If you want push notifications, synchronized calendars, contacts and notes you will need to add another layer of complexity to your setup.

Critics of Protonmail and similar will point out that browser based encryption is a weakness, however that doesn't change the fact that it is a major step in the right direction. The battle for privacy is fought in depth, not absolutes.

Protonmail is hosted in a Swiss datacenter, run by a Swiss company under strict data protection laws. They offer a free tier and a paid one for your own domains.

If you still want to go the self hosted route iRedMail and Mailinabox both work well. Sovereign runs too many services - it should really be split into VMs or containers.

nebulon 2 days ago 2 replies      
Hi, we had similar concerns about privacy and have built https://cloudron.io to solve not only the hassle of setting up email but also other services where applicable selfhostable options are available.

The mail server is fully built into the platform itself and automatically takes care of all the tiny details required to get over the often stated deliverability issues (SPF, dkim, PTR, ...). So far we have found that many of the issues described here are not actually a big issue as long as everything is setup the way those large providers want it to be. The occasional report from a user about getting blacklisted usually is a matter of submitting the required form on the providers unlisting site. They do act timely as well in my experience and the process is not very time consuming.

Overall I was pretty surprised how well it works in the end, given that there are so many reports about selfhosting email is too complex to deal with.

wvh 2 days ago 0 replies      
I have been setting up mailservers since the '90s when you still had to deal with sendmail's configuration format. I've used most email servers available on unix platforms. And I'm also someone who wants to do everything myself and not depend on anybody else if I don't have to. Still, and it hurts me to say this, it might simply not be worth your time. I use a paid service for my main mailbox now.

I have a mailserver handling some personal email, but I feel it's too risky (to take the responsibility) and too much effort to host email accounts for just a few other people. You can and probably will be every once in a while blacklisted by one of the big providers or have legitimate email bounce, even if you have SPF, DKIM, TLS and your own spam filters set up. You also have to keep an eye on your servers to see if no new filth gets through. And you'd probably want to keep a backup relay ready. You have to provide ways for the users to configure or fine-tune their individual spam settings and mark messages. You most likely want to install a web interface next to the IMAP and/or POP service, which opens another can of worms.

I feel I'm too old now meaning I have so many other responsibilities that I don't want to babysit something that is after all rather crucial and should "just work". If you have the energy and time, please go for it, otherwise just search for a reliable paid service.

Note that assuming privacy when talking about email, even though most protocol interactions might be encrypted these days, is in my opinion somewhat misguided. Don't use email if it's truly private. Or use end-to-end encryption, such as PGP.

There might be a hole in the market for a company that helps geeks host reliable email servers, for those that want more control than just an IMAP account with sieve support, but maybe the margins are too low and fighting spamming subscribers too hard.

smnscu 2 days ago 0 replies      
I'm the ex-CTO of Lavaboom, a German startup that did encrypted email. Right now I'm working on Oakmail, which will be even more radically open and easy to use. I reckon it will be 2-3 months before we launch an open beta (and of course you will be able to deploy it any time once it's usable).


daledavies 2 days ago 0 replies      
If you have concerns for privacy, find a paid service you trust.

Hosting an email server yourself is a great learning exercise but you'll be forever playing whack-a-mole with spam and wondering if your setup is actually properly secure and waiting for the day you get hacked.

I did this myself for a few years and at one point had very few deliverability problems, then one day out of the blue I ended up on a black list and started getting complaint emails. After that it was either rebuild on a new ip address and start again or choose a paid provider and move on, I did the latter and opted for Fastmail.

felixsanz 2 days ago 0 replies      
If you're worried about privacy check https://protonmail.com
akulbe 2 days ago 3 replies      

Formerly, I'd say maintaining your own email server isn't easy. It was hell trying to set one up 10-15 years ago. This guy (and the contributors) have made it about as easy as it can get. I've hosted mail for one of my domains on a DO droplet, where I set up a mail server with that guide. Been running it for ~4 years. No issues. Highly recommended.

richardkeller 2 days ago 1 reply      
I can highly recommend Mail-in-a-Box [1], especially if you're looking for a solution that is secure, easy to install, and doesn't require any fiddling. You can host it on a cheap VPS for $5 a month and it'll happily chug along without any problems.

Deliverability will only be an issue if you land up on an IP address that was previously abused, so it may be worth checking out the IP address reputation on DNSBL [2] before setting up Mail-in-a-Box.

Make sure you configure an SPF record for the server's IP address, and then also set up DKIM and SPF. I have yet to see any deliverability issues using this setup.

[1] https://mailinabox.email

[2] http://www.dnsbl.info

mikebos 2 days ago 4 replies      
If you're concerned about privacy, don't use a free service. Pay for it and the privacy concern usually goes away.If you specifically concerned with US laws go German:https://posteo.de/ is a good one to consider.
tomw1808 2 days ago 0 replies      
Interesting, I am not the only one. Additionally for me, its also pretty expensive to host domains for all my startup-ideas on gmail. I know, it's just $5/user/mo, but if you run 20-30 "fun ideas" it adds up...

So I used a scaleway.com instance and installed https://github.com/sovereign/sovereign/

I forked it and made it especially for my own usecase working for the scaleway VPNhttps://github.com/tomw1808/sovereign

So far I am pretty pleased. I opted against mailinabox because I want to use the server for other things too and mailinabox strongly suggests against it...

thesmallestcat 1 day ago 0 replies      
I use GoogleMail behind a custom domain ($50/year) and am quite pleased. I used to be a FastMail customer but a couple minor outages and weirdness around billing made me switch a few years ago. Functional "report spam" is a big win for GoogleMail, and as an apps (or is it "GSuite" now?) customer you don't have to worry about ads/privacy issues. Don't self-host, I self-hosted (Postfix/Dovecot) before using FastMail and it was a huge headache between reasonable spam filtering on the receiving end, and undelivered/spam-marked emails on the send side, although I learned a lot by self-hosting. Also, it was hard to pretend I was serious about privacy/security when I was self-hosting on a box that any Linode admin could shell into as root, especially after Linode's security dramas. This is not to say that self-hosting cannot be cheaper and more secure than alternatives, but if you're not a full-time sysadmin regularly setting up mail hosts, you probably will get something(s) wrong. I never could silence that voice in the back of my head saying "what if some really important email couldn't be delivered to/from me?", which was sometimes right. As others have said, you have to use GPG if you're serious about privacy, regardless of your email provider. Anyway, for me, $50/year is a great deal for reliable email with good spam filtering, and being able to use my personal address/domain for Google Hangouts and Docs is a decent win for collaboration.
ionised 20 hours ago 0 replies      
Running your own mail server is more work than it might seem, especially when it comes to setting up security and spam filtering and such.

If you want to use another web mail service other than GMail then I can recommend;

https://kolabnow.com/ (the lite option just gives you webmail)


https://posteo.de/en (very green-energy and privacy focused

crawrey 2 days ago 0 replies      
You may want to consider German-based Tutanota (https://tutanota.com) who uses open-source cryptography, rather than some alternatives such as Swiss-based ProtonMail who use a combination of open-source and proprietary closed-source cryptography.

Failing that, head on over to https://privacytoolsio.github.io/privacytools.io/ and check out alternatives and other related information.

hugo19941994 2 days ago 0 replies      
I run Postfix & Dovecot (with SPF, DKIM, DMARC, DNSSEC, TLS) from my home network with a remote backup just in case it goes down, as well as my own DNS servers.

I had to ask my ISP to disable some rules on their end and pay a fee to have a static IP address, but overall it was pretty painless. Though I can imagine some providers being much worse.

After the initial hurdle of setting everything up in my experience everything went mostly fine. I had to whitelist my domain on Microsoft's site, but Gmail and Yahoo worked fine from the start. I haven't had a problem since. My university teachers receive my email just fine, so did my co-workers before I was given a corporate email address.

Is it worth it? Maybe not. It was more of a learning experience for me, but I find it works just as well as any other provider I've used. At least for now.

As others have said there are lots of outdated guides. I found the Archlinux Wiki and the manpages to be the most useful resources. Also please stay up to date on the software.

CarlHoerberg 2 days ago 0 replies      
Setting up Dovecot (with master-master replication) and Postfix (+ spamassassin, dmarc, SPF) isn't too bad. There's a lot of dated guides out there though. Stick to the man pages as far as possible.
coka 2 days ago 2 replies      
If you care about privacy _and_ freedom, check out Kolab Now.


msh 1 day ago 0 replies      
Setting up your own mailserver and especially maintaining it is a lot of work.

Hosted I would look at fastmail, mailbox.org and proton mail.

dral 2 days ago 0 replies      
The premise here is thatservices such as gmail or outlook don't respect the privacy of their customers. Can someone point me to an actual case where gmail for business (using gsuite) or outlook haven't respected their privacy engagement ? Or a serious report on that matter ? thanks.
madiathomas 2 days ago 0 replies      
I chose Google GSuite to avoid non-delivery of emails which was happening when I was still on self-hosting. Most emails I send used to be marked as spam and blocked. Not anymore. Fee I pay every month is very low compared to the time I used to spend managing my own servers.
sigi45 2 days ago 0 replies      
I'm using gmail for my daily use and tried maintaining my own server and it was too much effort.

I'm a little bit worried what happens when gmail is blocking my account for whatever reasons, but if, i would create a second own managed mail address only for accounts.

feistypharit 2 days ago 1 reply      
I'm really happy with https://www.migadu.com. i just converted to paid. It's nice to be able to add users and domains without a price change.
yuvadam 2 days ago 0 replies      
Pay for a good email service instead of selling your private data to the advertisement industry. I personally use Fastmail and they are awesome.
smt88 2 days ago 1 reply      
ProtonMail? Fastmail?
Ask HN: How do I find an open source project to contribute to?
28 points by coffeeski  2 days ago   22 comments top 20
mwenge 2 days ago 1 reply      
The most important thing is to find a project that has the bandwidth to process your contributions. If you see dangling pull requests or patches that have never been reviewed, move along. Even if a project passes this smell test, the only way to be sure that it has maintainers willing to devote some measure of time to providing feedback on your work is to submit one or two small fixes and see how they fare.
SallySwanSmith 2 days ago 1 reply      
https://openhatch.org/ Is an nonprofit dedicated towards helping people find and get involved in open source software
danso 2 days ago 0 replies      
Is there a gem or library that you use? One that isn't too massively complex? Then start with that. My first open source contributions were adding features to libraries that were useful to me, so even if I got slapped down, I still came out ahead in terms of productivity.

Another reason to pick a library you actually use is because you will go into it with additional curiosity and expectations. I'm always a bit thrilled to find out that a library which I can't even begin to imagine being clever or thoughtful enough to design is indeed much smarter than I imagined, or, is actually kept together with duct tape. The latter situation has actually helped me overcome productivity declines that come from obsessing in vain over whether I've got the details down right. I just need to remind myself that a much more useful and popular library that I depend on has apparently flaws that end up not impeding development or public usage.

michaericalribo 2 days ago 0 replies      
What do you use regularly, that is open source? You'll be more motivated to participate in projects that you use on a regular basis, that might be useful to you.

Find some software that you're interested in. Do you follow their GitHub account, subscribe to the mailing list (especially dev list), keep up to date on changes that are new? Have you looked at their source? Is there anything you wish the software did better, or any bugs you wish were fixed?

Learning how everything fits together for a software project can be a great learning experience, and if you take notes as you go, you'll naturally write docs (and be the hero of the day).

i336_ 2 days ago 0 replies      
You could write a project-finding app using JS and Ruby/Elixir/JS for the backend

I'm thinking of scraping GitHub, Bitbucket, HackerOne, etc for metrics that correspond to projects that a) need help and b) need the kind of help you'd want to give.

This is the problem you're staring at right now, so you're already interested in solving it.

andreftavares 2 days ago 0 replies      
<shameless-plug> https://github.com/yoonic</shameless-plug>

My open-source e-commerce platform all in Javascript. Backend is an API powered by Hapi.js (node.js) and Storefront is a React isomorphic app.

vortico 2 days ago 0 replies      
My suggestion is to convince your company (or if you own the company, simply take action) to use a particular open source software package. As soon as you run into a feature you need but the package does not offer, take some time to develop on top of it (on company time or at home) instead of writing your own hacky in-house solution, using a more careful development process than your company's software. Develop it until it is used in production, and donate the feature to the project. This way, if it is not wanted or ignored, it will still benefit you or your company.
squiguy7 2 days ago 0 replies      
You can try to look under GitHub's trending page for those languages (e.g. https://github.com/trending/ruby).

Also I like to check out tools that I use daily and see if there are issues I can tackle. You can follow mailing lists, public slack channels, etc. too.

Just talking to others will give you ideas to get started. And if you can't find anything quickly, start your own and have fun with it!

ragesoss 2 days ago 0 replies      
You can contribute to my project, https://github.com/WikiEducationFoundation/WikiEduDashboard

It's a Rails/React app for professors to run Wikipedia assignments, where instead of writing term papers, the students improve Wikipedia articles.

I'd love to have help from experienced devs -- especially someone to help me get started migrating to Redux.

agibsonccc 2 days ago 0 replies      
Usually find something you use. OSS projects love small/scoped fixes. There are a ton of underlooked at sections of larger projects like docs, minor optimizations,..

If you can, try to look at how the project communicates with the community (mailing list, irc, gitter,slack,..) and just ask the community where the pain points are if you can't find any open issues.

roschdal 1 day ago 0 replies      
Freeciv is looking for contributors: https://github.com/freeciv/freeciv-web
goldenbeet 2 days ago 0 replies      
The best way to do it is just look at what packages you use frequently. If their github repo is accessible then dive into the "issues" and start opening some PRs to address them. And if you've ever wished the package did X then propose it and open a PR to see if the maintainers are interested in adding it
rukenshia 2 days ago 0 replies      
You could try contributing to gitlab.com, I didn't know any Ruby when I started contributing but they have an awesome guideline and issue tags that show you what's easy to do for you. You get high quality code reviews and they help you a lot when you struggle.
aw3c2 2 days ago 0 replies      
Any project needs help. Pick a hobby of yours and browse the web to find appropriate projects in your languages. I would say that is the best way to find work that is fun for you.
cannotsay2017 2 days ago 1 reply      
Ask HN: How much data can be stored in a piece of paper?
10 points by LostWanderer  2 days ago   14 comments top 6
dnace 2 days ago 3 replies      
Quite a lot, if you encode information in DNA [1] and then soak the paper in it. Densities of 5.5 petabits per cubic millimeter of DNA have been experimentally achieved. [2]

A typical sheet of A4 printer paper is about 6237 cubic millimeters in exterior volume (i.e. including interstices between fibers within the sheet.) Say you could soak a sheet of paper in soluble DNA and dry it such that you ended up with 6000 mm^3 of DNA in and on it. That'd be roughly 4000 petabytes.

[1] - https://en.wikipedia.org/wiki/DNA_digital_data_storage[2] - https://www.ncbi.nlm.nih.gov/pubmed/22903519

tabeth 1 day ago 1 reply      
AFAIK a single character is 1 byte.

An A4 sheet of paper is 62370 sqmm. A good printer can print a 1 sq mm character. Therefore, at a minimum you have 62370 bytes * 2, so basically 0.12 of a megabyte, which is pretty bad.

However, say you store something on the piece of paper that uses the second from midnight as a translator, such that the contents mean something else, depending on which second in the day you read it. Let's also say this translation is not using a hash type function, but is completely arithmetic and the formula to do this can be stored on the back side of the sheet in its entirety. This would take the 0.12MB /2 (you're not using both sides now) and multiply that by every second of the day, until the next, so 86400 seconds * 0.06MB = about 5 gigabytes.

Honestly I think you could get into the zetabytes. There are other factors you could use that I haven't considered:

1. Smell of the paper

2. Electrical charge

3. Feel of the paper (who said we're not printing in three dimensions)?

4. Taste (you could use a single piece of paper formed from different types, which have unique tastes).

I think the main limitation is as you add more factors to increase the compression you increase the complexity and time in which it takes to decompress, or get the information back. I'm sure there's some sort of law on this.Let's add in the orientation, in degrees of the piece of paper as well. Let's say you can reliably use all 360 degrees to permute the existing formula. Now you have 5 gigabytes * 360 = 1800 gigabytes. Let's just call this 2 terabytes.

Pamar 2 days ago 1 reply      
According to this article: https://www.extremetech.com/extreme/134427-a-paper-based-bac... you can cram around 3MB of data (in a reasonably robust way) on the side of a sheet of paper - it is unclear if they mean A4 or Legal, though.
kleer001 1 day ago 0 replies      
just tomorrow's winning lottery numbers would be good enough for me
pasbesoin 1 day ago 0 replies      
Reminded me of this (as in, I thought I remembered something maybe named something like "optar", and googled):


which I found via this repository, that makes a comment regarding apparent abandonment of the original:


Also from memory, there is at least one other such "ginormous barcode" utility/application that gained some attention, some years back. It may well be the "paperback" one that another commenter mentions, here.

At least one of these had configurable resolution and redundancy parameters.

Ask HN: Is it permitted to proxy HackerNews actions
4 points by yehosef  1 day ago   3 comments top 3
anilgulecha 1 day ago 0 replies      
A simple workaround is to use login client-side, and not your server. That way, you store the cookie on the client, and use it for HN actions, without having to be a centralized place of all user info.

Many HN reader apps implement this as well.

detaro 1 day ago 0 replies      
I think the best would be to e-mail the mods at hn@ycombinator.com with this question
terri_cat 1 day ago 0 replies      
Sounds fraught with spam risk
Ask HN: Opencourseware for Economics?
5 points by zabana  1 day ago   6 comments top 4
techjuice 1 day ago 1 reply      
Say no more:https://ocw.mit.edu/courses/economics/

Enjoy, do not forget to take frequent breaks from the great material to hydrate

tedmiston 1 day ago 1 reply      
Economics is a huge field. Is there something specific you want to learn? eg macroeconomics, microeconomics, economics applied to business, behavioral economics, finance, etc

Khan Academy has good material as well.


itamarst 22 hours ago 0 replies      
"Debunking Economics" is a pretty good book on mainstream economics, and why it's mostly wrong. Unlike similar books, it demonstrates the wrongness via self-contradiction, as opposed to by saying "but you're ignoring X and Y", so you also get nice overview of mainstream economics.
twoquestions 19 hours ago 0 replies      
During your studies remember to be very, very careful what you read. There's good links here thus far, but there's a lot of rhetoric pretending to be instruction out there.
Ask HN: How much time do you spend reading books?
6 points by NicoJuicy  13 hours ago   7 comments top 5
mindcrime 13 hours ago 1 reply      
It varies a lot from day to day and week to week, but off-hand I'd say I spend at least an hour a day reading most weekday evenings, so at least five hours a week. Most of the time it'll be more than that though. I'd estimate somewhere between 5-15 hours a week is normal. But occasionally I may get into something really meaty and just read non-stop for 8 or 10 hours.

Subjects? Varies... lots of software stuff obviously, but I also read books on general science, history, business, marketing, biology, electronics, biographies, etc.

If you really want to see what I read, add me on Goodreads:


WheelsAtLarge 7 hours ago 0 replies      
I read 1 hour a day, mainly nonfiction, with the idea that reading is somehow improving me. Funny, I just recently came to the realization that I need to apply what I read - learning by "osmosis" is probably just wishful thinking. Reading without any application is just entertainment.

I've recently cut my reading time and I am spending more time recollecting and figuring out how to apply what I read.

You said you don't read a lot but I would 1st suggest that you increase the time needed to understand how to apply what you read rather than just add reading time.

Make a list of what you want to improve, get a book on that and use it.

tjalfi 4 hours ago 0 replies      
I used to read about 400 books per year but have cut back a lot. I have read less than 20 books this year. I now spend most of my time programing and learning how to become a better programmer. Reading fiction may help me to become well-rounded but it is unlikely to lead me to a better job.
metaphor 7 hours ago 0 replies      
Research literature (ACM and IEEE subscriptions; Sci-Hub fills remaining gaps), 1-3 hours every evening, depending on how well the topic keeps interest. There's never any shortage of material: citations in a single paper almost always lead down deep rabbit holes.
sotojuan 9 hours ago 0 replies      
At least two hours everyday. I wake up early to read and I read on both to/from commutes. Subway commute makes it easy, but if I drove I'd do audiobooks.

I don't read tech books in these times. Usually history, biography, and art history. I make another time slot for books like tech books that I ""study"".

How to get kids interested in design?
6 points by squarks  1 day ago   7 comments top 4
DanBC 1 day ago 0 replies      
Start early: make art supplies and art toys easily available.

Talk about it - talk about how it's easy to use this app because the designers made it easy to use, or it's hard to use this app because the designers made it hard to use. When reading books talk about the images and the fonts. (For example, Sam and Dave Dig A Hole has lovely drawings, large print, and a clean simple font with high contrast. Farther has a weird font in a low contrast.)

Involve them in decisions about decoration and room layout. Introduce simple design and art concepts early, and help them spot patterns. "Colour wheels" are simple enough, so you could buy a bunch of paint and do some potato printing with complementary colours, and clashing colours.



PS: If you're involved in children's books, and you want to use a weird font: just fucking don't.

michaelflux 1 day ago 1 reply      
It depends a lot on the age of the kids of course, but as @jaakk said, play. It's hard to get kids to be interested in something if you're just sitting them down and trying to explain it to them. Get hands on. For the purpose of this answer I'm going to assume you mean "design" in the general sense of the word, not just web design.

Show them how design is responsible for every day things that they're already using. Take them to an industrial design museum, perhaps a conference that focuses on 3D printing so they can see with their own eyes how everyday things are created from scratch. Next time you drive past a stop sign, ask them why they think it's red - that alone opens up doors to discussions about everything from psychology to evolution.

jaakk 1 day ago 0 replies      
Hey, that's a really interesting discussion. The easiest way to get kids involved and interested in design is probably through play. When the whole learning experience is made easy and playful enough, one can start teaching fast and build more complicated assignments on top of that knowledge later on. My experience is based on building a 3D modeling platform to get children interested in design (https://3dc.io). What we found is that once you get the kids modeling and collaborating with each other in a fun and engaging way, it's possible to successfully teach them problem solving in wider contexts (even design thinking) already in the primary school. They key seems to be making the learning experience gradual, fun and accessible.
RUG3Y 18 hours ago 0 replies      
Model interest in design for them through your behavior, and provide opportunity in the form of tools, supplies, books, and exciting examples. Then encourage them in the right way when they do things. The child may or may not develop a lasting interest in design, everyone is different.
Ask HN: Why does the c ++ community dont have a famous ORM like Java Hibernate?
6 points by Londerson  1 day ago   4 comments top 3
gusmd 1 day ago 1 reply      
At my company we use ODB [0] with SQLite in a VERY large commercial application. We've been using it for a couple of years now. Rock-solid.

ps.: ODB is GPL v2. We have a commercial license to avoid it. ODB also offers a "free" commercial license that imposes limits on the size of your database.

[0] http://www.codesynthesis.com/products/odb/

HelloNurse 1 day ago 0 replies      
Accessing databases in general and accessing them with an ORM in particular is far more common in Java and C# (due to "enterprise" applications) and in Python, Ruby, PHP (due to popular frameworks for database-backed web applications) than in C or C++.

When a database is used in C++, the application is typically not very portable and/or small and simple and/or performance critical and/or not object-centric, and an ORM would offer little or no benefit over using a more direct API.

fiftyacorn 23 hours ago 0 replies      
QT has an ORM
Ask HN: Is it harder getting a tech job now vs. 5 years ago?
45 points by throwawayhtgatj  2 days ago   40 comments top 16
alain94040 1 day ago 2 replies      
A major difference between now and 5 years ago is that you have been self-employed for 5 years. From an employer's perspective, you have tasted the forbidden fruit of independence. You no longer fit in a nice box, guaranteed to obey your manager and believe in the corporate mission statement. You can think for yourself.

There are companies that value your new skills. But more companies will find those new skills scary.

purerandomness 2 days ago 1 reply      
You might want to read "The Google Rsum" by Gayle McDowell. It changed the way I apply to jobs, and it made a difference like day and night.

I'm surprised to learn that there are people working in Tech currently finding it hard to apply. Where are you located?

Here in Europe, at least in my experience, it's getting easier every day. Tech is incredibly popular, but demand is still even higher.

You might be viewed as overqualified because of your business experience if you apply to startups.

You might just make basic mistakes that the book will teach you not to do.

jbms 2 days ago 0 replies      
Find the HR person on LinkedIn, or senior technical person.Phone the company and ask to be put through to them.

Explain to them you've applied, and you've not heard back, but you're interested.

You're a person then, not an email/CV-to-be-dealt-with, and people generally want to help people. They'll often commit there on the phone to setting up an interview with you.

Artlav 2 days ago 3 replies      
I get a feeling that the tech job market is oversaturated right now, and there are plenty of people running around with all the "achievements" (diplomas, certifications, etc) and no actual knowledge.

On my last job i sat right next to the corner where we interviewed candidates, so i could hear everything and would occasionally pop in to participate. There was a scary amount of people like that - boasting a big resume but unable to tell a mutex from a semaphore.

So, i suspect you failed to pass some initial HR-level filters designed to filter out the sludge so that the actual programmers would be able to cope with the amount of candidates left to interview.

toexitthedonut 2 days ago 0 replies      
I go in and out of work. The only time I've applied for jobs is when I currently don't have one. And I do also feel like it has gotten more difficult.

First job out of college took about three months of applying.

Second job, six month.

Third job was a wash, went 8 months freelancing for bits of cash before I went to company at job no. 1 to consult for them. But the pay was terrible.

Fourth job I took after 6 months of applying. Then I got laid off late 2014.

And I couldn't get a full time job since.

I am not so naive to think I'm the only one like this. But for at least a few, the job market has gotten less forgiving. My experience is not helping balance that out.

asafira 2 days ago 1 reply      
In case people missed this buried in the comments: throwawayhtgatj is looking for remote work, which is notably more difficult to get than local work.
RUG3Y 2 days ago 0 replies      
I don't have ton of experience, but I've gotten about an interview a week since I started looking for a job. I started by applying to 20 or 30 jobs a day, once I got a few interviews I slowed down.

I'm currently interviewing with a small company and I'll be doing a face-to-face with them next week.

I know it's hard to get feedback when you don't get an interview in the first place, but how does your resume look? You can have a lot of great stuff on there without giving enough specific points to generate interest. Or, you could not be applying to enough jobs.

Job searching is tough and un-fun, good luck out there!

fiftyacorn 2 days ago 0 replies      
Its probably harder getting the job - but the actual jobs arent harder. I blame the "programmers interview" as an unnecessary side show
sleepingeights 2 days ago 0 replies      
It's either ALOT harder or very different now-a-days. Anything that you could run on a consistent basis as a bread-winning norm is already or quickly in the process of *aaS or being integrated into one or other.

One way to sell a remote-style work is to make it part of a perk you want in the position or job. There is a ton of talent and skill already willing to move right into the company's parking lot and LIVE ( literally ) there: https://www.youtube.com/watch?v=KG0_KiM9Mv8

You're not competitive with them at all if it comes to just comparing apples and oranges. The way the market is, offering remote-work can be sold as a perk by the company, or something you need to negotiate for. But expect to either fly to the office or meet them atleast once a week, maybe less or more depending... most likely more than once a week.

jamesmp98 2 days ago 1 reply      
I just started applying to junior positions last week coming from freelancing. I'v applied probably the same number of jobs as the OP with no interview requests and only one reply from a recruiter that seems to be going nowhere atm (I have not heard from him since last friday)

Of course there are not too many jobs where I am. Where are you located and where are you applying?

venture_lol 10 hours ago 0 replies      
Dude, create several new SaaS apps and go another 5 years. You've got the skills. Just have to dust off the cobwebs on the drive and the skills :)
nherment 2 days ago 0 replies      
Get in touch with me, we're looking for remote folks: https://www.arkhaios.net/
runT1ME 1 day ago 0 replies      
I work remotely from Orange County for a big company that 'doesn't do remote'. I contributed to open source projects that were already in use by the company, and I had to start out on a '3 month contract' (working remote) before they were ok with hiring remote.
grandbestmaster 1 day ago 0 replies      
I was a network engineer for 2.5 years, started out right from college. Recently went to two interviews, devops and full stack engineer and got offers from both. This was in Stockholm.
joshmn 2 days ago 0 replies      
You _might_ be over-qualified, and people would be turning you away because they think they can't afford you right off the bat.

I always tell people (that ask): The hardest part is getting the first interview. Stand out (seriously, just be yourself) but don't be loud in doing so.

humbleMouse 2 days ago 1 reply      
Apply through a recruiter, you'll get some interviews.
Ask HN: If you were to do it today, what would you do?
5 points by irishcoffee  1 day ago   6 comments top 5
Bumerang 19 hours ago 0 replies      
Having exactly the same background (system programming, linux, c/c++, python, never touched Javascript nor web development) I did the very same recently.

My solution was to use Django (DRF) for REST API and React for the front-end and Zurb Foundation as UI framework. Javascript is really easy to pick up and there are plenty of tools and tutorials available out there. Used Facebook JS SDK for FB login and sharing (because it's easy and ready to go, plus FB is popular enough to make the effort worth). I also used JWT for auth and session management, just to explore it and because it seemed simple enough for my purposes. Django will solve most of the security concerns for you.

In total, took me ~4 months while working full time to wrap my head around everything and build the website + deployment (Nginx, Fabric, Celery, supervisor... all the usual stuff).

NumberCruncher 1 day ago 0 replies      
Web2py provides all the features you mentioned out of the box, is easy to pick up if you know python and works well together with intercooler.js, so you don't have to write javascript. On the other hand this combo may not be future-proof if you want to build a unicorn, but hey, you will high probably fail anyhow...
just-for-fun 1 day ago 1 reply      
I would choose Python/Django. As a Python developer you can build that app in a couple of days.
smt88 1 day ago 0 replies      
If I had months, I'd choose Rust. I'm excited to play around with it and would love to help move it toward web-friendliness.

If I had weeks, I'd choose React (server + browser with a single code base) in TypeScript with SCSS.

If I had days, I'd choose React (via slingshot boilerplate) in JavaScript with SCSS. The only reason I'd ever start a React project without TypeScript is that the fantastic react-slingshot boilerplate doesn't have TypeScript support and ESLint + WebStorm is decent for type-checking.

tylercubell 1 day ago 0 replies      
It depends on what your goal is. If your goal is to build a toy app for the hell of it then you can probably get away with a few scripts and a sqlite database and call it a day. If your goal is to learn a specific framework, then go for it. Generally speaking, the overhead of a framework is usually worth it for larger projects but not necessarily for smaller ones.
Ask HN: Do you write unit tests for your side projects?
10 points by jmstfv  2 days ago   14 comments top 14
pattrn 2 days ago 0 replies      
Yes, absolutely. Due to the large number of side projects I've worked on over the years, it's very important to me that I can put something down and pick it up again later. Unit tests allow me to do that. They drastically reduce the amount of certainty I have that modifying or adding a new feature to an old code-base won't break everything.
fuball63 6 hours ago 0 replies      
The way I've always approached this dilemma is to set up my testing framework and tooling so unit tests are possible, and then write them as I find bugs in early ad hoc testing.

I know its very anti-TDD to write tests from a reactionary perspective, but I find this is a good way to gradually get test coverage where it is needed while still being able to prototype the parts of the side project that are interesting.

itamarst 2 days ago 0 replies      
It depends on the kind of code you're writing, and where it is in its lifecycle.


* Humans can determine if your code does what it's supposed to.

* Automated tests can keep your code stable, i.e. make sure it doesn't change.

If you care about correctness you want manual testing and code review. If you care about stability you want automated testing like unit tests.

If you care about both correctness and stability you need both kinds of testing.

Personally I've mostly written libraries, where stability is very important, so yes, lots of unit tests.

Longer version: https://codewithoutrules.com/2017/03/26/why-how-test-softwar...

zabana 2 days ago 0 replies      
I always tell myself that I should skip unit tests because it's just "a side project". Then I lose sleep over it. And I end up spending an additional week and a half working on it instead of actually shipping. In my opinion it really depends on the nature of the side project. If you're going to charge users or if it's an open source project like a python package or npm module that other developers are going to rely on, it's absolutely necessary that you do. Else, meh.
jfaucett 2 days ago 0 replies      
Rarely. I just do a lot of integration/feature testing for actual projects. Most of my libraries have unit tests though cause for me it makes sense to write a unit test for things like matrix transformations or ensuring some generic gl interface func works cross-platform. But IMO its pointless to unit test a sign_in function, I'd rather just know the whole sign-in feature works.
twobyfour 2 days ago 0 replies      
Yes. Among other things, TDD lets you code from the inside out. That is, it makes it a lot easier to build and verify the business logic core of your code (which is usually the interesting part from both a technical and learning POV) without havin to first bootstrap all the additional boilerplte required to wrap an application around it to do click-throughs.
Artlav 2 days ago 0 replies      
More yes for deeper stuff, more no for outer stuff.

I have integrated testsuit for core framework components, which can be run separately, i tend to have separate tests for more upper level stuff, and i rarely have unit tests for actual programs.

It tends to be a drag that is very easy to half-ass, so i try not to waste it.

nicolasd 2 days ago 0 replies      
Yes, I am used to it from my day-to-day job. I probably don't test every edge-case as I do in my job, but it just saves me time and brain capacity (at least I have the feeling that the coding part in TDD is the easy one).
flukus 2 days ago 0 replies      
Yes, mainly around the computationally complicated parts.

One of my side projects is also a test framework, so that has tests of itself using itself, in hindsight this was a poor decision.

1ba9115454 2 days ago 0 replies      
No. But I do write system tests. I'm always using ruby on rails with capybara this is basically headless testing through a browser.
awareBrah 2 days ago 0 replies      
Never unless they are revenue generating over a few thousand a month
fiftyacorn 2 days ago 0 replies      
Depends on the purpose and phase - if its testing the water or proof of concept then no, if it takes off a bit then yes
Jemaclus 2 days ago 0 replies      
Always. IMO, it's always worth writing tests.
hoschicz 2 days ago 0 replies      
I comment them heavily and use them as documentation.
How many ppl think no response from your management is sort of humiliation?
3 points by crystalqqqq  1 day ago   2 comments top 2
singold 1 day ago 0 replies      
Could you elaborate a bit more? I'm not sure what do you mean by no response (response to what?). I wanted to start the discussion but don't have enough context to say anything.
atsaloli 1 day ago 0 replies      
Happens to me all the time. I don't take it personally. Is this over email? I find short emails more likely to be read and answered.
Ask HN: Rust or Haskell which is(or will be) used more in industry
3 points by thickice  1 day ago   6 comments top 5
taylodl 1 day ago 1 reply      
Rust has two huge things going for it:

1. C-based lineage

2. Designed for industry use

Haskell has become the "nights and weekends" language. People are using it on pet projects outside of work and they're arguably becoming better programmers for having done so. Rust though is in the C family of languages, for which nearly every developer has familiarity, and was designed for larger project teams to collaborate and maintain large projects. Add in Rust's memory management strategy and it's not requiring a VM (unlike Java/C#) so it runs fast in a Docker container and you have a winner.

To me a more interesting question to ask, because the answer isn't nearly as clear-cut, is whether Rust or Go will be used more in industry?

SamReidHughes 1 day ago 0 replies      
That's hard to say. The biggest risk for Rust is that it'll get beaten by something better. The biggest for Haskell is that nobody wants to use it because lazy evaluation is bad.
just-for-fun 1 day ago 0 replies      
I think that no one of them. They both are too complicated for average developers.
psyc 1 day ago 0 replies      
Of the two, I could bet a fortune on Rust and sleep easy about it.
AnimalMuppet 1 day ago 0 replies      
Oh, look there, my crystal ball's on the blink again...

My guess: Rust.

Why you should believe my guess: Rust seems to be growing faster than Haskell.

Why you should not believe my guess: I'm primarily in the embedded space, where Rust fits well with the problems I'm used to having to solve. Haskell? Not so much. This makes Rust appear much more generally useful to me, when it may only be more useful in my specific area.

Ask HN: Are all developers sith by nature?
4 points by dmitripopov  1 day ago   11 comments top 2
itamarst 1 day ago 1 reply      
Lots of developers aren't "passionate", at least about software development. (https://codewithoutrules.com/2016/11/30/not-a-passionate-pro...)

And there's a good argument to be made that you shouldn't be passionate about software development: http://www.virtuouscode.com/2014/02/10/the-passion-gospel/

Creativity is not "all about passion". It's a skill you can apply with or without passion.

kluck 6 hours ago 0 replies      
Passion to me is when you come back to some activity weither you plan to or not, e.g. you think about a programming problem out of the blue while in the shower or walking the dog. The things you are passionate about are always there in the back of your mind, presenting themselves when they wish. So passion is an attitude or state of mind regarding an activity.

Creativity on the other hand is when you come up in an idea or a solution to a problem. When you let out the stream of thoughts regarding a given topic, unfiltered by rational thinking. So creativity is the process of getting rid of your prejudices and looking a topic from different angles.

I guess they are both very different kind of concepts.

Creativity can be a passion, see artists, musicians. But also the most un-creative activity, e.g. sorting stamps, can be a passion.

Ask HN: What's the next ARPANET type of breakthrough?
7 points by yeukhon  2 days ago   8 comments top 3
jfaucett 2 days ago 0 replies      
The computer/brain interface. This will fundamentally change the way we interact with technology because it will make said tech essentially part of us and expand our sensory experience and understanding of reality.
babyrainbow 2 days ago 1 reply      
ARPANET is not legendary. INTERNET is not a breakthrough. Same as mobile phones

It is just a bunch on computers connected over a wire, on a phenomenal scale...

To reach the next breakthrough, we ll first have to go through the next big global crisis...Our next breakthroughs will rise from its ashes.

So our generation might see the start of this crisis. Couple of your next generations will live through it..Maybe after even more generations, if we have learned a couple of things from the past (I mean, the present as of now), our intellects might be free enough so that human kind can create further breakthroughs...

Artlav 2 days ago 0 replies      
Sigh... If only it was that easy to predict.
       cached 6 May 2017 12:05:01 GMT