hacker news with inline top comments    .. more ..    31 Dec 2016 Ask
home   ask   best   2 years ago   
Ask HN: Switching from developer to project manager. What to keep in mind?
148 points by alaaf  13 hours ago   94 comments top 55
orbz 12 hours ago 3 replies      
Have spent about 5 years in Program/Project Management, and 10 in Developer Lead roles, and the big thing I'd have to say about the PM world is that just because it has Management in the title doesn't mean you're a people manager.

You're the developers' peer, and will have to do a good chunk of work convincing them that the work you think is important, is in fact important. Everyone has gut feelings on what the project should be and where it's going. Your job is to provide hard evidence and tracking of that on behalf of the end user.

Also you're not a full time dev anymore. Don't take dev tasks on unless they're menial and no one else wants to do them. Nothing undercuts trust like doing someone's job for them.

arsenide 6 minutes ago 0 replies      
I'm "only" a developer, but clear, concise communication from PMs is the most important thing for me in my current position. Think about yourself as a developer: what do you want from PMs? Personally, I like clear communication and quick resolution regarding the issues I have (that can be solved by PM) in my day-to-day workflow. When I am working on something and hit a road block requiring PM input, the most important thing for me is to get feedback as soon as possible so I can continue on what I am doing.

Communication seems to be key. Ensure you understand and that you are understood.

rubidium 13 hours ago 2 replies      
The answer depends a lot on the industry/ product. But in general:

- Communicate, communicate, communicate. Give status updates. Ask for status updates. Get information from customers to your development team. Give updates from your dev. team to your customer.

-Be the voice of the customer. Know if it's more important to be really good or just get the dang thing finished. Let the development team know "we need to cut corners on this one because that's what the customer wants" if that's what needs to happen (of course, don't compromise safety).

-Take care of external roadblocks. Get API info, product specs, pricing, timelines, deadlines, etc... and find a way to effectively give it to the development team.

-Assume your dev team knows best how to build, test, and ship the product, but ask them questions to find out why. Don't be authoritative, but rather put on the attitude of a student. E.g. "I hear you saying we won't be able to ship next week. Why is that? What caused that? Is there anything I could for our next project that would help prevent this from happening?"

-Do project retrospectives.

-Learn the art of minimizing meeting length but maximizing their effectiveness. Communicate, communicate, communicate.

jives 12 hours ago 3 replies      
Many developers try to keep track of everything in their head. That won't work as a PM.

Your time will usually be much more fractured than it was a dev, as you track multiple ongoing projects at various levels of detail. If you try to keep everything in your head, you will most likely start dropping balls, and if there's anyone who shouldn't drop balls, it's a PM.

So, my advice: make lists and track the status of everything you can.

"A large percentage of my time as a PM (project manager) was spent making ordered lists." - Scott Berkun [1]

[1] http://scottberkun.com/2012/how-to-make-things-happen/

codebeaker 11 hours ago 0 replies      
Interestingly topical I shared this tweet [0] a day or two ago, repeated here to save you a click. Having switched from dev to CTO (which is like PM for every product in your company, when you're small) it resonated with me. I personally think it's my job to "shield" the team from any/all external distractions.

 Dev productivity killers: * Notifications * Meetings * Emails * Interruptions Great managers block these. Bad managers cause them.
Otherwise, I can only agree with the advice about structure, and discipline. I'm currently shopping around for something like https://github.com/danger/danger to help me do my job better by policing Trello automatically - we've had great experiences using this for Capistrano's pull requests and I'd love to try this approach on Trello to police the rules we agreed to, but don't necessarily always follow. That'd probably save me double digit hours each week.

[0]: https://twitter.com/_ericelliott/status/814082788378804224

LoSboccacc 13 hours ago 2 replies      
I did the switch. The hard part is leaving your previous shoes behind. While not mandatory you have to choose how to partition your time and set your priorities straight.

Chances are if getting promoted you are good at it, whatever that is, probably better than most your manages. Find someone that thinks in your same patterns and delegate as much technical issues to his guidance, so you will have no surprise if you need to turn your back at the technical aspects while solving budgeting/timing/serivces issues.

Be prepared to say no to improvements, that's a hard thing to do for programmers turned managers. If you have a chance, get a 10% contingency on tasks so you can gift good devs with time to branch out their ideas.

Be sure to rotate menial tasks to prevent burnout, it's easy to pin them always to the less skilled but that does nobody any favor.

Depending on your org structure it may be impossible to be autonomous on budget/spending/allocation, use that to negotiate timing. "I need x to finish in this timeline or need the timeline shifted by y" works most of the time if you're not happy with a given objective, especially if x is controlled from above.

ryanmarsh 4 hours ago 1 reply      
1. Don't take anything personally.

2. Always remain calm and patient.

3. When people make bad decisions against your strong advice don't feel the need to make their bad decisions a success.

4. Don't own the failure of people who don't understand software development. You'll always be doing the best you can with what you're given.

5. You'll be remembered for your grace and professionalism.

6. Never tell a lie. Never get hand wavy.

7. Never use the word "should". Normative speech has no place in software development. It will embarrass you.

8. Always protect your team from the bullshit that rolls down hill. They'll notice. Then one day when you have to ask them to do something ridiculous they'll know you fought like hell before you had to bring it to them.

9 & 10. This goes without saying but don't write checks (make commitments) you can't cash. Projects will succeed or fail no matter how easy or hard they look at the outset.

Sharma 12 hours ago 0 replies      
Most Important: Be humble.

You know how to program and do the technical design, but do not do that anymore.

Delegate the development/technical tasks to your tech lead/Sr Developer. Help/Suggest them if they are overloaded or lagging behind but don't impose your technical strategies. Delegate and delegate!

Keep everyone involved. Do not hide any information from team. Invite Sr Dev/QA/Tech leads to the meetings with clients(selectively).

Give importance to every team member. Involve them in decision making.

Finally, do all of the above based on the situations. Do not do everything all the time.

So...Manage all of this to become a good Manager!

Arcanum-XIII 13 hours ago 0 replies      
Don't forget where you came from : you're there to help grease the path forward, not to be a new cog for higher management. I've witness the change multiple time, and it lead to very bad pm... and don't forget that you will fail sometimes one or the other parties involved - some dev will be disgruntled, management will be behind you with misunderstanding of the situation. Last thing : learn to communicate, you're more than probably moved because of that !
wai1234 4 hours ago 0 replies      
I'll assume that PM is a real role in your company and not a glorified status metrics report generator.

The first thing to keep in mind is that being a PM has nothing to do with the skills of a developer other than to judge estimates and evaluate design decisions. It's a DIFFERENT job. You're not the developers' peer and you're not s super lead (anyone who says those things is telling you they just want to be left alone to do whatever they want). So, here's the simplest version:

A PM is responsible for WHAT everyone on the team is doing, a dev (team member) is responsible for HOW they will do the work assigned. That division of responsibility is not black and white but it's a good razor to start with. Anyone who tells you it's not a real management role or you're not a people manager is badly mistaken. Because the PM role in most companies wields authority through persuasion, you are the only true people manager there is.

As the primary conduit between the world outside the project (with its many, often conflicting, stakeholders), and the world inside the project (with its many, often conflicting personalities, styles, and levels of experience), the PM has to deconflict both worlds and harmonize the two. That means you will always have to choose who to disappoint at any given moment.

The job of the PM is to maximize the value of the project for the company. Everything else is secondary. Note that value, in this case, covers a lot of ground from economics to morale and increased capability to tackle the next project. Always be prepared to explain your decisions on that basis, and, if you can't, why are you deciding that way?

The final thing I would tell you to expect is to spend 2+ years at the role before you begin to become comfortable with it, if you ever do. You are either wired to be a good PM or you are not. The mechanics aren't hard, the social dynamics and the situational awareness are.

Good luck!

cjcenizal 13 hours ago 0 replies      
I've never made that switch so I can't give advice on how to PM effectively (that probably is also very team- and project-dependent). But I imagine it might be a challenge to completely leave the engineer mindset behind. So I'd be careful to avoid talking with engineers as if you're still one of them, e.g. discussing technical challenges in depth, suggesting solutions, reviewing code. Stay focused on your new role as PM to avoid any confusion and keep the team humming along. Good luck!
amorphid 11 hours ago 0 replies      
As you probably know, estimating how long software takes to develop is at best challenging, and at worse impossible. Part of estimating how long something will take comes from some domain expertise. I encourage you to continue dabbling in the technologies you're team uses, so what you know doesn't drift too far from what your team knows.

Another reasons to keep dabbling is that you may decide you don't like project management. If you work as a PM for two years without writing any code, trying to get back into development is gonna be much harder.

Lastly, as a code dabbler, don't try being a developer yourself. That's no longer your role. The occasional git commit to fix a typo or something is fine, but you don't wanna be that guy who is a control freak, always refactoring the code your team delivers. If you wanna write code, stay in development.

erikb 10 hours ago 0 replies      
Tip: Find a real PM platform and ask them what they hate about engineers turning PMs. Here you get a lot of advice from engineers who basically say "be nicer to engineers than the other PMs I know". But there are reasons for these misunderstandings that go beyond PMs being arrogant pricks. If you can figure that out you'll certianly have an easier life.
JimmyL 8 hours ago 0 replies      
Remember that you're not a developer anymore, and that the way you contribute to the team isn't coding. You're moving from a role that focuses on concrete contributions, to a role that focuses on creating leverage so that others can contribute better.

Your job now is to manage the state of the projects you're working on, and enable the developers on your teams. If you're coding, you're almost certainly not doing that to the degree you could be. The new job will be difficult. Change is hard, new skills are hard, and there are days you'll want to just go code something because it's easier to do and more fun.

Don't do it.

Your priorities are enabling your team and making sure that everyone knows and is on board with the state of your projects. In your new job, the way you succeed isn't by putting out code - it's by your projects and teams succeeding.

Make sure you like the sound of these priorities; if you don't, you should probably reconsider the change of roles.

Lastly, make sure that you understand what you're accountable and responsible for. Project managers don't (by default) have people responsibility, but at your company they might. Same question about doing product ownership, agile coaching, tactical team leadership, reporting, etc.

cerrelio 8 hours ago 1 reply      
These are based off my current experience in transitioning to a management role. I'm still a dev, but my manager is "testing me out" for a management role.

- Keep current on technologies, what your team uses and wants to use, and also technologies that might be useful.

- Know your developers' strengths and weakness, both technical and interpersonal.

- Time management. (Can't stress this enough).

- Ask lots of thoughtful questions (informed by the first item in the list).

- Develop relationships with other managers, teams and executives. If you want to manager bigger things, those guys need to see you and know you can do it.

- Don't hold grudges. At the end of the day, go home and forget about any bullshit that occurred.

- Trust your developers.

- Don't be afraid to say no.

- Take risks. Accept responsibility when those risks turn into failures.

- Give genuine praise.

One sort of cultural thing to keep in mind. It may not apply to you though. After moving to the Bay Area several years ago I noticed that behavior with organizations often defaults to passive-aggressive, especially when there's disagreement. Avoid being passive-aggressive and correct others (in a professional manner) when they're being passive-aggressive. I used to deal with more aggressive people when I worked on the East Coast. You know where you stand at least. PA behavior allows bad sentiment to stew and kills progress of any sort. Being assertive most of the time will solve this.

cpeterso 11 hours ago 0 replies      
Project Management for the Unofficial Project Manager is a high-level but pretty complete introduction. It has good good examples from non-technical projects based on the Project Management Institutes infamous Project Management Body of Knowledge (PMBOK).

Scott Berkuns Making Things Happen: Mastering Project Management (Theory in Practice) details some of the less process-oriented, more in the trenches aspects to managing a project.

Steve McConnells Rapid Development: Taming Wild Software Schedules is more of an encyclopedia of software project management. Published in 1996, its now a bit dated, pre-dating Scrum and Agile but all those ideas have been known for a long time.

giis 12 hours ago 0 replies      
If there is one thing I say "Don't _act_ like being nice to fellow team-members & Don't make fake urgency for specific task."

Most annoying thing : I can handle with some straight forward guys but not someone who fake like caring about you and your career, while actually fooling you. And remember those 'urgent' task needs to completed in late nights or weekends and no one cares about it for months, stop pushing people just because you possess some-kind of authority. Be transparent.

All the best!

maxxxxx 11 hours ago 1 reply      
- Avoid scheduling meaningless meetings. Make sure your meetings serve a purpose and are not just status updates.

- Encourage communication between different roles.

- Trust the developers. I like it when a project manager can talk code but in the end it's the people who are doing the work who should make decisions.

- Protect your team from upper management. Don't let senior managers assign work to your team members for their pet projects.

dmourati 12 hours ago 0 replies      
Prepare to be largely ignored and avoided. I know the PMs I work with mean well but I find it hard to take them seriously or give them much credit when their work product is mostly spreadsheets, gant charts, and scheduling meetings.

Product managers, on the other hand, deal with what gets in front of the customer, why, and when. I have more inclination to work with them.

minipci1321 10 hours ago 0 replies      
1. Instantly stop being a developer. Trust your team -- if they cannot figure it out, most probably you won't be able either. (Saying that because for some time at the beginning it will feel like you can.) Remember, they are at least as smart as you are, and have been thinking about the problem for much more time than you can dedicate to it. If they fail, you alone won't save it single-handedly.

2. Managing open-source-based codebase is vastly different from managing the closed-source one. Mixing both (a reality) will require special thinking and measures. It will require two very different sorts of developers and activities.

wiresurfer 5 hours ago 0 replies      
My experience stems a relatively brief period (~8months) of managing a resource strapped team of 5 devs to deliver pretty complex and largely vaguely specd out products for my venture. (For reference this included a real estate platform, a client facing android app, plus an enterprise management system all complete with Data ingestion / Machine Learning pipelines, built from the ground up.) Here are my learnings1) chart your plan. Sprints have feature groups, feature groups have features each with defined dependencies. and each feature has tasks. How clearly you map this dependency graph not just in terms of to-do items, but also in time, and by human resource required will define how on time your product gets shipped.

2) Rightfully Estimating TimeOverestimate keeping in mind shipping a feature is usually making it + testing it out a bit.

3) Know what features can be chopped off when push comes to shove.

4) communicate clearly and with as much supporting documentation as possible.We still can't vulcan mind meld. So as a PM you need to convey your prioritised vision to your devs. motivation, how a feature fits on the roadmap, dependent features, Screenshots/ mocks, process flows, test cases to check against, all this will make sure features shipped don't need reiteration.

4) Architect for longevity If you are working with an architect, he will probably be responsible for this. But remember, its ok to delay the initial stages of your product if you are spending time building up the core. Think build systems, continuous integration and deployment cycles, just the API layers and business logic, UI work happening totally independent as functional mocks etc etc.

5) Trying to stay away from the temptation of coding. Code when you need to, assign tasks to yourself as and when required but not as a norm. It takes a lot to see the bigger picture and keep track of so many moving parts of a project. Doesn't help overloading your system with dev tasks too. These two worlds are pretty different beasts.

PS: One tool which I relied heavily on over the last year was Omniplan. We not just tracked dev items, but also things like deployment timelines, adoption rate within the org, training schedules for employees and how all this tied up into the features which needed to be rolled at and at what time. A sample of dev wise sprint plan which helps people plan their workload , keeps meetings to the point, and lets people take vacations when they are relatively less occupied :) http://imgur.com/a/1b2mH

dbcurtis 13 hours ago 0 replies      
1. Have clear goals. Be able to articulate them.2. Communicate the goals to your team.3. Understand what barriers your team faces in completing the goals. Eliminate the barriers, or adjust the goals.4. Clarify your goals.5. Care about your team as people.6. Communicate your goals clearly.

The best boss I ever had was an ex-Israeli commando officer. Most people look shocked when I say that. Here is why he was great:

1. There was never, ever, any doubt whatsoever what he wanted done, and when.2. When you told him what it would take to do that, he actually listened, and did what he could to smooth the path.3. He never left basic humanity behind for any reason in his treatment of team members.

zippergz 11 hours ago 2 replies      
Make sure you have a very clear understanding of the difference between a Project Manager and a Product Manager. I've found that lots of developers think they're the same thing....
tehlike 8 hours ago 0 replies      
be an enabler.

make your eng peers do uninterrupted work, reduce meetings, cut the crap out of the corporate process.

This is not to say keep them in the dark about what is going on, but don't try to schedule a "sync" meetings, ever :)

Another thing that me and my PM peer did was, we had direct communication line. he could ping me anytime, and i could ping him anytime. We came up with ideas at odd hours that ended up making a good amount of revenue increase, but we also respected each other's time. I used him to get myself pure work time when people were asking for updates, and he used me to prototype many of these ideas.

it worked out really well for both of us.

cpeterso 11 hours ago 0 replies      
I moved from dev to technical program/project management at Mozilla. Given the organization's open source projects and bottom-up hacker culture, we have no unified project management process or tools. We have Bugzilla, GitHub, wikis (public and private for security sensitive work), Etherpad, Trello, Jira, Confluence (Atlassian's wiki product), Google Docs and Spreadsheets, Smartsheet, and other tools. Every team users different subsets of tools. Choice is good but can make collaboration between teams or at a higher program level more challenging.

I'm curious whether Google or Facebook have standard project manager processes and tools internally. I know Facebook users Phabricator, but they also user GitHub.

bigethan 13 hours ago 1 reply      
Without shipped features or a trail of closed tickets to point at, what will be your measure of career success?

In my experience making a similar move, I initially made my gauge of success too dependent on others. I had to sit and think to create new metrics and measurements outside of what was currently done in order to show my success.

schnevets 11 hours ago 0 replies      
Not a PM, but beginning to take on a few duties for an internal project, and I'm quickly realizing how much of the job involves measuring and forecasting things that are immeasurable/prone to entropy.

I always assumed PMs would ballpark things like Red/Amber/Green color codes and projections, but that "winging it" will only take you so far.

The big lesson learned from a somewhat chaotic first foray into management was record everything, and leverage that evidence in every decision post kick-off. This requires more disk space than my brain has, so my note taking and organization skills were forced to go through an overhaul.

fma 11 hours ago 0 replies      
I'm not a PM, but I have a PM that I greatly respect.

My take away from him is be organized. If you have to oversee a lot of projects, lots of schedules, lots of people, you can't keep track of it all. Outlook, Onenote...find some good tools and use it well. Follow up promptly - you may need to deal with other teams a lot, and other teams won't put you on a top priority.

As a follow up as 'other teams won't put you on a top priority'...don't put other teams on a top priority :). Learn to say no when you have to. But also learn to say yes when you can. Your team may need assistance down the road and you want to cash in those chips.

ilaksh 2 hours ago 0 replies      
Is there such a thing as a project management internship?
bdcravens 11 hours ago 0 replies      
All the development will seem to be moving way too slow, and everyone will be doing things that seem unneeded. (Hint: you did the same thing as a developer, but you'll really notice it now)
rb808 11 hours ago 0 replies      
You have to concentrate on keeping resources - keep you good people, get budget for more people, keep close with customers and/or the people who pay for your software. Manage up and down.
facorreia 5 hours ago 0 replies      
Communication above all. Make sure all stakeholders agree and understand goals, scope and trade-offs, and that progress is communicated often.

Don't overcommit.

Address the biggest technical risks early.

smoyer 9 hours ago 0 replies      
That you can go back ... I've been forced into management several times and pushed myself back into development when I got bored. Smart companies will create a technical track that allows advancement roughly equal to the management track (though it never seems to equal the sales track).
yblu 5 hours ago 0 replies      
I did the switch. The most important thing is reading these 2 books:

* Peopleware

* The Mythical Man-Month

I can't think of better books on managing software projects and software developers.

shandor 12 hours ago 0 replies      
This probably depends on your exact role, but usually there's enough technical role left for devs-come-PMs that keeping your technical skills top-notch is really important. In the end, you are the one to make a lot of decisions that have impact in the future, so better make those decisions as informed as you can. It's easy to get lost in all the new things with new role, so keeping up technology-wise will need work.
dchuk 13 hours ago 1 reply      
You have to delegate planning/architecture/development always. You can't afford to take deep dives into specific things anymore because you will be in charge of many more disparate tasks.

Every once in a while you can participate in some technical discussions but ultimately now you are responsible for them happening, not necessarily happening with you.

futhey 8 hours ago 0 replies      
Did this myself. Remember: You know too much. Make this an advantage, but don't become a part-time dev manager.

You know the nitty-gritty and every detail of how a piece of software is made. Use this to your advantage to make developers you work with feel safe. You've been in their shoes before, you aren't going to change requirements last minute. You aren't going to come to them with an incomplete spec and demand unrealistic outcomes. When your bosses are setting the stage for disaster, you're going to fix it at their level before your dev team even hears about it.

However, don't fall into the trap of discrediting what the developers you work with are saying or doing, because you have the experience or know more than them. Be humble, and believe in your team. Gain their trust, and make sure they know they can come to you with their problems, mistakes, and questions early. They'll warn you when something is going wrong before anyone else even notices it (instead of keeping quiet and going along with a bad idea). They'll tell you the real reasons why they're pushing back, while they give other PMs excuses they think are more likely to get them what they need to succeed.

Your primary job is no longer product or productivity or even shipping. Your job is to get the best work out of the people you work with (even the people you work for, not just those you manage). Most of the time, the problems you fix are communication problems. Most of the time, everyone means well but doesn't realize when and how they're shooting themselves in the foot.

Momentum is everything. Don't let anyone place anything above your team's momentum. Become a firewall between criticism and productivity. Internalize critical feedback, but be careful about when and how you bring it to your developers. Sure, there may be rough edges on your product, but every time you tell your guys they're screwing up, you're sacrificing project momentum. Finish a rough draft of your product, celebrate the victory you've earned (now it's 80% complete), and motivate everyone to polish off the rough edges after thanking them for their hard work.

It's your job to celebrate every minor victory and be that guy (or gal) that emails the entire company to show off something a member of your team did. Not to make yourself look good, but to motivate that person to give a damn the next time doing the right thing means working hard (when nobody is going to notice).

Also, don't write any code and don't do code reviews. Keep your skills sharp by building MVPs, doing technical research, exploring APIs while the spec is being written, etc. Don't step on your team's toes by micromanaging & nitpicking with their code.

edoceo 11 hours ago 0 replies      
Remember the most valuable resource to give your dev team: TIME to do their job well.
usgroup 12 hours ago 2 replies      
Out of interest, why are you switching to project management if you wouldn't mind me asking?
Clubber 12 hours ago 0 replies      
When you are looking for something to do, don't make work for your developers (meetings).
aryehof 8 hours ago 0 replies      
Continually report and contrast the original schedule and scope, versus changes due to requirement changes and additions.
PaulHoule 13 hours ago 0 replies      
I would suggest getting involved with the project management institute, possibly getting a certification. The training for pcap or PMP certification is actually really good as to helping you do your job.
polskibus 12 hours ago 0 replies      
Don't forget where you came from! You'll be better at your job if you understand what your subordinates have to deal with on a daily basis.
ffggvv 13 hours ago 0 replies      
Don't sit around doing nothing, take care of the team's personal problems, make people feel part of something.
draw_down 2 hours ago 0 replies      
Pretty much every PM I'm ever worked with kept a short-staffed team, picked ship dates the team was unlikely to hit, then as the date neared, started scrounging around for developers outside the team to fix all their shitty bugs and MacGyver their product/feature into a shippable state. Then after they ship, of course all credit and promotions went to the original team.

Be nice if you didn't pull that shit.

abramN 10 hours ago 0 replies      
learn to recognize when a project is going south, and act immediately!
tboyd47 12 hours ago 0 replies      
Stop coding and start managing.
pryelluw 12 hours ago 0 replies      
moron4hire 12 hours ago 0 replies      
You may find yourself naturally gravitating towards thinking in terms of you doing particular tasks, and if you are still maintaining a part-time developer role on the project, the danger exists that you will make yourself a bottle-neck on tasks.

You will have to learn how to delegate. Give people the opportunity to fail. Even if someone doesn't seem like they can do a particular task, give them the chance to learn, and give them the resources to learn.

This goes into always remembering to protect the future of the project. You'll receive tons of pressure to do "quick fixes" and "just brute force it" and other bullshit management lines, a lot more than when you were just a developer. It's your job to be a shield against upper management for the sake of the project. Don't short-change the long-term viability of the project and your team for short-term gains.

yarou 12 hours ago 1 reply      
Nag people (seriously). Be as proactive as possible.
unclebucknasty 12 hours ago 0 replies      
Make sure the expectations of the role in your environment are clear and that the position adds value vs. being just a thin veneer over other roles.

I've seen many environments which have project managers that aren't needed. Very capable people are then relegated to noting status updates and pressuring the team to meet deadlines. That way lies misery for all.

Agile has done away with a lot of these positions, however, environments that are highly complex with long term activity and/or many stakeholders to coordinate may still warrant the role.

cryptozeus 11 hours ago 0 replies      
Post this question on quora
kyberias 8 hours ago 0 replies      
Ask HN: Would you wait a day for less biased, more reliable curated news?
25 points by awgme  13 hours ago   19 comments top 14
codeddesign 10 hours ago 1 reply      
Impossible. Your own biases consciously or sub-consciously would ultimately skew the curation.Facebook ran into this issue a little while ago with trending topics. If they did it manually, it was skewed. If they did in algorithmically, it was skewed based on whoever wrote the algorithm.The only possible way that I could see this working is if you had 3 columns: Left-wing, right-wing, and relatively unbiased (all news articles are biased simply because editors and news agencies are biased). Within those three columns, you place news articles in the left-wing or right-wing columns, and allow for voting (left, right, unbiased). However, this would also require you to have a large group from both sides voting in order to function properly. Good luck!
gpsx 11 hours ago 0 replies      
I think we need a single news source in the US that both liberals and conservatives could read. The two sides are living in different worlds, not because one side is reading fake news but because the two sides of the news are given from increasingly different perspectives. Fixing this problem is critical for the well being of our country. I have been waiting for someone to address this.

With that said, I am not sure if the solution you propose fixes that. The small group of curators would just providing a new perspective, probably not one that liberals and conservatives would both like. This is after all what many existing news sources already do. The key is in the group of curators. Maybe a well known group of liberals and conservatives could work on the stories so it fairly addresses the perspectives of both sides?

hackerboos 10 hours ago 0 replies      
I do. It's called Democracy Now. All their news breaks slower than MSM. https://www.democracynow.org
dfmooreqqq 12 hours ago 0 replies      
I usually wait a week for less biased, more reliable curated news (http://theweek.com/)
galfarragem 12 hours ago 0 replies      
I wouldn't:

- If it is something really relevant it will appear on HN front page with a very short delay. Then, by reading the comments and looking for different points of view, I can form an opinion as unbiased as it is possible to get.

- In addition, for weekly digested news, I can read the Economist.

DoodleBuggy 9 hours ago 0 replies      
In the modern media environment of shock, outrage, and anything for eyeballs, people seem to enjoy indulging in bias and have little interest in "more reliable" because they prefer to confirm existing bias and dismiss any facts that are contrarian to their own existing opinions.

It's going to be tough to overcome that.

bbctol 9 hours ago 0 replies      
Why would I trust you/your friends as researchers? Establishment journalism has problems, but you're basically suggesting that you do the same journalistic tasks, except one source removed from the truth and without any backing.
morbidhawk 12 hours ago 1 reply      
tldr; I'm pessimistic about this

This is a hard problem I think. Sometimes news that is interesting and popular is also controversial or just click-bait BS, so you have an ethical vs. interesting news dichotomy. Day-old-news will probably not be interesting to people who already read and discussed the topic the day before. Also consider that if only a few people are curating it there will be other discrediting flaws that might not be caught until more readers see it.

Also, keep in mind that if users get sick of the same kind of articles being posted (which could likely happen given biases of the curators) instead of blaming the users for upvoting (like on HN) they will blame the service instead and will likely stop using the service altogether.

Edit: I could see this working with a small group of individuals that are like-minded to the biases/opinions of the curators.

wmccullough 12 hours ago 0 replies      
I think this is a great idea. Instead of burdening yourselves with the task, why not establish a set of rules and let curation become democratized. I'd argue that the majority of people would follow the rules. Obviously you'll still get the Reddit style trolls who will try to throw it off.
polygot 13 hours ago 0 replies      
I think your idea is pretty cool

I just had another an idea about something tangentially similar just a few minutes ago. It'd be algorithmically curated news with no human intervention: https://news.ycombinator.com/item?id=13284875 . Do you think this would be somewhat related to what you're talking about?

zhte415 2 hours ago 0 replies      
This is what newspapers are for.
joeclark77 1 hour ago 0 replies      
What you're describing is a blog. I wouldn't wait a day for it, since the blogs I follow provide links and commentary within hours. The challenge is to find one that isn't a one-trick pony, i.e. isn't just about one topic like politics.

If you want to launch a new one and be successful, you'll have to find a way to stand out from the crowd. That's probably going to be a "bias" of some kind, or at least a particular philosophy you intend to bring to bear through your commentary.

For example, I would be interested in reading a blog that reports on the news through the lens of black swans and antifragility (see Nassim Taleb's books). It's something I haven't really seen done well.

kahrkunne 9 hours ago 1 reply      
I'd be willing to wait, but you probably wouldn't be able to write unbiased news with one day and two people.

Bias is not something you do on purpose, it's something you have to work very hard to avoid.

tourdeforce 8 hours ago 0 replies      
No, I prefer more sites with useful content like HN. MSM is not useful at all.
Ask HN: What's the coolest tech you got this Christmas?
15 points by rosstex  10 hours ago   19 comments top 10
Andrenid 35 minutes ago 0 replies      
Electric brush cutter. We live on 10 acres and do lots of trimming so having a rechargeable and relatively-quiet tool to grab and do a bit whenever we have spare time is truly awesome.

Not worrying about fuel, oil, etc is great and turns trimming from a proper "job" to "Ill just do a bit of trimming while waiting for dinner". It has been one of the biggest and best improvements to our daily farm chores in years.

JoshCole 8 hours ago 1 reply      
One of the google cardboard style VR devices. It cost under twenty dollars. You put your phone in it and it synchs with the device. You can look around and it will actually shift the view according to where you are looking.

It was a novelty, but for the price it was a very good novelty.

It had problems though. I found that the device tended to get confused about my original facing. So straight ahead would eventually mean turning my head. I'd have to shift around to avoid straining my neck, but it didn't really help because straight ahead would just continue shifting after a little while.

I don't use it much, but it was definitely the coolest thing I got.

randcraw 6 hours ago 0 replies      
FLIR One thermal camera for my phone. I think it'll be sensitive enough and have sufficient resolution to usefully capture the subtle thermal signals of the leaks and lack of insulation around the doors, windows, and in the walls of my old house.
ChicagoBoy11 4 hours ago 0 replies      
I gave myself the new rMBP with the touchbar.

I spent countless hours reading all the articles bashing Apple for it, and finally concluded that much of it boiled down to the fact that it was an expensive machine for the specs it delivered. And that is undeniably true.

But I stare at the darn thing virtually all hours I am working and a significant chunk of my leisure time as well. The reality is that for my actual computing, things like weight, battery life, how the keys feel, the screen, etc., matter far more in my enjoyment and utility of the computer, and on that measure Apple continues to knock it out of the park. I got my first MBP because of the retina screen, and soon thereafter realized I could never go back to using a device with a lower pixel density. I kinda feel the same with this machine when it comes to color: It is just stunning. Given how often I am looking at it, that dimension alone made this purchase worth it IMO.

The Touchbar has in fact mostly been a gimmick, although pairing it with BetterTouchTool has actually been extremely powerful and I've come to use it more and more.

jetti 9 hours ago 2 replies      
Samsung Gear VR. Unfortunately I'm returning it as the technology isn't to the point that prevents me from getting nauseous when using it.
jack1243star 5 hours ago 0 replies      
A Fujifilm Instax camera. Maybe not very exciting, but reminded me of how it feels to have a photo in hands, and to browse them by spreading them on the table. Awesome.
dTal 5 hours ago 0 replies      
A Pebble Time Steel. It's clearly a device in a class of its own; using an embedded computer to do watch things well instead of using a watch to do computer things badly. It's a design philosophy reminiscent of the (original, e-ink) Kindle. It's a shame Pebble failed, but that doesn't make the hardware less useful - and the free software community surrounding it looks robust.
rokosbasilisk 7 hours ago 1 reply      
htc vive. Vr is expensive and space demanding, but wow its amazing. The cardboard and the gear vr just dont compare.

Call me a vr believer now

__derek__ 6 hours ago 1 reply      
I got a toaster with a button to add a bit more toasting time. It's pretty neat and removes the guesswork from trying to get the toast just right.
Donmario 8 hours ago 0 replies      
Apple watch. Actually it's more than a gadget for me now. It's quite convenient for taking calls, managing music, messages etc.
Ask HN: What startups are working on hard, interesting problems?
7 points by z0a  5 hours ago   8 comments top 5
tedmiston 4 hours ago 0 replies      
Astronomer is working on building the platform for data scientists and data engineers to be able to pipe any source to any destination.

Some of the technical complexity comes from the sheer diversity of data sources and sinks. The infrastructure is also non-trivial.

This is somewhat future looking because most large startups have a data team that builds their own in-house system eg Airbnb, Yelp. However a lot of companies don't have that luxury and extracting value (patterns and insights, for example) from your data is useful for many businesses.

sturza 5 hours ago 0 replies      
We're launching a platform for Government-solvable problems:


misframer 5 hours ago 1 reply      
How do you define "hard" and "interesting?"
cocktailpeanuts 4 hours ago 2 replies      
I have just the company you're looking for: This company is working on solving the most difficult problem the humanity has been ever since it existed--how to get laid--it's called Tinder.

That's right! This problem is so hard that NOBODY can claim to have figured it out. And I haven't even gotten to the market size--the potential market size is literally the entire humanity! Not everyone wants to share what they had for lunch, but EVERYONE wants to get laid!

Hope this answers your question!

Ask HN: Is Silicon Valley Becoming an Insiders Club?
19 points by svreject  10 hours ago   8 comments top 8
nicholas73 35 minutes ago 0 replies      
I had a similar experience recently with a well funded startup. There is no doubt that I can do the job well, as I helped with one of their engineers as a vendor. I corrected one of their components several times, when my contact there reached out to me for advice.

But my resume wasn't bulletproof (decent school, some job hopping) and I didn't express the requisite awe about their product or technical tasks (I gave my assessment that they have a good business plan but should expect modest growth, and the engineering tasks needed would be tedious to anyone honest). That's all I can think of, because I sure as hell didn't answer any questions incorrectly.

Also, for all my efforts, they ghosted on me afterwards.

kasey_junk 8 hours ago 0 replies      
Isn't it also possible that it's always been an insiders club & you've only recently started being an outsider?

What you are describing could be attributed to a component of SV thats long existed. Ageism.

abraca 4 hours ago 0 replies      
My two cents is that your skillset is not quite the right match for the companies you are interviewing at, and so it's going to be tougher to find a position. Not impossible but you'll have to interview around a lot more and have a good reference (as you suggest. Basically to get a stretch position you need an "in.") The easiest jobs to get are those where you are essentially doing exactly the same thing you did before, in a similar space. So - a company doing related work, of similar size (less than 15 engineers.) It sounds like you are interviewing at much larger companies than places you have experience as a tech lead at - and it is a different skillset. Large-scale experience IS different. Tech leads at a large company do different kinds of work than a CTO at a startup. A lot of the work is around working with other tech leads, and working with cross-functional leads across the company who have growing teams of their own, managing politics, scaling etc. Figuring out communication structures, reporting up and across and so on. Other on HN could elaborate on this better than I can. To get this kind of job you have to convince the interviewers that you can work well in a huge company as a tech lead even though you haven't done that before. Find ing someone who can vouch for you in that respect (a VC, executive at the company etc) will help you get there. Good luck
evangelista 7 hours ago 0 replies      

I went through something similar. As a self-taught software engineer with a business background from a not great school, the hiring process at most large companies is specifically built to prevent people like me from getting in the door.

What you are encountering is the "gatekeeper layer" of these major tech companies. I call this "the front door." To put it mildly: The front door of tech is configured to reject everything that doesn't match some unrealistic perfect ideal of a genius savant engineer. To summarize Gandalf's general disposition towards flaming Balrogs:"Thou shalt not pass!"

Why is the focus on rejection and not acceptance?

There are three reasons. First, everyone wants to work at Google, Facebook etc. and there are a lot of unqualified people coming in. Second, these companies can't afford to grow at the rate at which they can gain talent. If Google were to hire a tiny fraction of the people applying to them every day, they would rapidly grow far beyond a size which makes sense. Third, they are very strategic about which directions they plan on growing in. They would rather acquire talent in groups focused in strategic topics like automotive than bother letting in single general-purpose individuals based on some brain teasers. Fourth, the actual volume of truly qualified people is even too high! The big companies can't afford to hire every qualified person who actually wants to work for them in some cases.

Therefore, anyone who possesses a diversity of skills beyond pure programming should completely avoid the front door, it isn't going to value your whole person (as you have seen).

Instead, you need to be using the "side door." That means you go and find people who you like (want to work with, resemble, build interesting stuff you like to use) and approach them personally and sit down with them like a regular human being and talk about building cool shit together.

If you are really great, people will recognize your greatness and they will help you get in the door.

Using the side door is about creating your own interview process rather than letting someone else define your interview process for you. Shoot high. Pick people who can hire you or have influence directly over hiring decisions. You don't need the gatekeepers.

analyst74 7 hours ago 0 replies      
I understand your frustration, because I am going through a similar phase, looking for a new job without references after many years not having to. I've also been rejected after what I thought to be very successful interviews, without real feedback on how I fell short.

I believe one or more of following factors are at play, keeping in mind that one company would not be the same as next:

- people have high bars for experienced hire, you can't just be smart and get things done, but also be able to wow the hiring manager/committee in some way.

- related to point 1, someone with 5 years of experience will have a difficult time evaluating someone with 15.

- if engineering expertise is hard to interview for, leadership skill is even harder. And companies are definitely more cautious when hiring for leadership roles.

- there are a LOT of people wanting to join those top startups, so competition is fierce, and there is less pressure to hire a good but not amazing candidate.

- interviewing is a skill in itself, just because you had so much experience does not mean you can ace interviews without preparation, especially with high expectation/competition positions. You should sit down and think hard how you can best demonstrate your experience in an interview.

- lastly, it's actually quite easy to fell into a good job that makes getting next one harder, especially if that project was a failure, or uses an outdated technology.

DoodleBuggy 8 hours ago 0 replies      
Connections can always make a difference, but are not everything. Here are a few thoughts on your scenario:

>>> The things I think are hurting me are that I'm not great at whiteboarding

I don't know about that. I have a friend who stopped an interview when asked to whiteboard and instead referred the panel to review github together, they ended up hiring him.

>>> it's hard to summarize the scope and impact of what I've done as CTO growing a team from 2 to 16 engineers

That is more likely to be the issue. Find a way to explain your value, what you did, and what you can do.

sjg007 6 hours ago 0 replies      
No.. but it is a tribe, "are you one of us" e.g. white boarding + algorithm/data structures. You may have better luck at slightly larger companies that are past the startup phase. Buy a whiteboard and have some (CS) friends over, practice. My experience has been that "experience" doesn't matter as much as the fundamentals do and being a nice reasonable person. The experience and degree get you the interview... the fundamentals land the job.

When explaining your accomplishments, put them in context they can understand. This isn't technical specific (unless shared) but rather at the more abstract (business) level.

There's the interview kickstart guy on here too. He runs a course that gets you in shape. You get interviewed by employees at the big companies which can only help. Triplebyte here also does a pre-screen for YC companies.

Good luck!

DrNuke 6 hours ago 0 replies      
Apart of interviewing as a skill that can be improved, do not overthink your situation, it may be much simpler than that: getting chosen and hired from the unemployed pool is much more difficult than jumping ship while being employed. Your failure, if you want to use this term in this context, may be being unemployed, especially true in tinderised environments aka startups and/or very young workforce. Your best shot is probably restart a bit lower in the ladder and therefore make your way up again from within.
Tell HN: Business Bootstrappers Discussion Group
5 points by Mz  6 hours ago   1 comment top
Mz 6 hours ago 0 replies      
To be clear, the idea is that this would welcome bootstrappers, people with a side project they are interested in developing, etc. I considered calling it "Biz Light" or "Business Light" and possibly a few other variations, but this was where the Ouija board ultimately landed. (shrug)

The couple of things I saw that inspired this:



Ask HN: We're launching a platform for Government-solvable problems
2 points by sturza  6 hours ago   1 comment top
Let's start using DuckDuckGo more often
224 points by rms_returns  13 hours ago   169 comments top 53
collyw 12 hours ago 11 replies      
I use DuckDuck go as my default search on my machines, but I think the fact that Google is not anonymous does give them a big advantage.

An obvious example of this is when I search for "Django" (I am primarily a Django developer). DuckDuckGo will return results about the film as the top hits, whereas Google already knows that I mean Django Web Framework and will return those as the top hits.

I appreciate the fact that my searches are anonymous with DDG, but I doubt that it will be able to be "as good" as Google for that reason.

thesmallestcat 12 hours ago 7 replies      
> I'm getting a feeling that some day in future, DDG is going to become as big as Google, if not supersede it.

Well, no, they don't even have their own search engine.

> a search engine's results are only as accurate as the number of users who search and contribute to it

That makes no sense. Anyway, we don't use DDG because its results are shitty.

AdamSC1 11 hours ago 1 reply      
Disclaimer: I work at DuckDuckGo so I'm a bit bias. I won't turn this into a sales pitch, but here are a few common misconceptions people have about privacy and search.

1) Many people don't realize that tracking isn't just about having something to hide. But, it can cost you money. From Airline tickets to staplers you pay based on a profile:



2) People don't realize what's being tracked. I usually send them to http://history.google.com/history to have a look. Or http://webkay.robinlinus.com/ to see what their browser can access. That makes a lot of people realize just what is out there.

3) People feel they can't search without personalized searches.

The example is often a matter of disambiguation. For example, if I type "Python" I want code, not snakes. But, really, when is the last time you only typed 'Python' and wanted something generic about Python? You probably wanted a package lookup or the latest news on a release. So if you become more specific there is no issue.

Plus when you get a bit more specific on Python you can trigger things like package lookup:


Or NumPy Cheatsheet:


At the end of the day some people may truly be ok with all the tracking that takes place, and that's ok that's up to them. But, at DuckDuckGo our goal is to educate people on online privacy, and provide a trusted way to access information as best we can. (Not to mention Instant Answers and Bangs which are super addicting)

keeganjw 12 hours ago 2 replies      
DDG has been my default search for the last few years and I only very rarely use it for it's native search results. The bang (!) search syntax is by far the biggest reason I use it. It allows me to search sooooo many websites directly from the address bar. If you want normal Google search results, use !g. If you want Google Images, use !gi. Amazon? !a. Wikipedia? !w. The list goes on and on and on.

Edit: grammar.

nine_k 12 hours ago 2 replies      
DDG is great; what it currently lacks (for me) is not search quality but reach; it has trouble indexing less visited corners of the internet.

Google did not become huge because of the search engine alone. AFAICT two things, based on related technologies, made Google oodles of money: AdWords and SERP ads. (AdWords used to be so unobtrusive I never tried to block them.)

I don't know how DDG currently pays its bills. They do feature unobtrusive and clearly marked ads on their SERP, too.

I'm not sure if ads can be reasonable without precise targeting, that is, tracking, tacit privacy invasion of various sorts, etc. Poorly targeted ads are disliked both by users ("dumb!") and advertisers ("poor conversion, money wasted").

The only other option I can see for a private company is to sell a subscription. Pay n USD / mo for no-tracking, no-strings-attached search.

The question is, of course, the value of n. It may turn out to be uncomfortably high for many users, just because advertisers value their eyeball rather highly.

You can already opt out of ads on some Google services, e.g. YouTube: try closing a few ads, or visit google.com/contributor when it (re-)opens. You can opt out of personalized ads, too. While many of us still won't trust all these measures, for many these would feel adequate.

I wish DDG all the luck. But being and staying an alternative, privacy-respecting search engine, even a low-profile one, isn't going to be easy.

aq3cn 12 hours ago 1 reply      
I use searx.me more often than any other search engine because along with giving the result it also display the search engine which it uses to fetch the result. I mean it is very important to know the areas where each of the search engine excel. Privacy is a concern for sure, but DuckDuckGo cannot win me over on the basis of privacy only. DuckDuckGo can be an answer to privacy concerned people, but it cannot beat Google Scholar, YouTube, PubMed, Amazon etc. We must know which search engine is perfect for which kind of keyword.
gpm 12 hours ago 0 replies      
I've used duckduckgo for a few years now, highly recommend it.

For 'easy' searches it's equivalent to Google.

For 'hard' searches it's nearly stricter better than Google, because if DuckDuckGo doesn't find something I also look at the Google results (append !g to the search), and they often come up with very different subsets of the internet.

To me it no longer has anything to do with privacy or not liking Google, it's just that DuckDuckGo has the better product for putting into your search bar.

anexprogrammer 12 hours ago 1 reply      
I'd suggest to "Start contributing data to DDG in 2017". Most of their best results are crowdsourced. I've been using it as default for perhaps 2 years now. There's some consistent annoyances, but overall I actually prefer the experience to Google.

It's much nicer about disambiguation than google, and can be incredibly helpful. e.g. Search for Zen - you get a wide selection of possibles in probable order. Sadly there's far too many missing. Crowdsourcing needed.

It's horrible at localisation. eg set Filter by region to UK and search any global multinational. Chances are the UK site is WAY down the list and the .com and US options hard at top. on google UK the local branch is always first.

There's too many instant answers that presume a US only view of the world.

The instant answers when they have adequate data and ! searches are brilliant.

Lyric and video searches are orders of magnitude better than Google.

Maybe 5% of searches go to Google as I'm not quickly finding what I need.

clydethefrog 11 hours ago 0 replies      
For anyone using !g when they don't get the results they need - use !s. It will use Startpage, which fetches results from the Google search engine but without giving any personal information to Google's servers.
Joeboy 12 hours ago 2 replies      
DDG is really great for easily doing specific types of search, eg. adding "!w" to your query will search for something on Wikipedia. For that feature, it's extremely useful and I don't like to be without it. But its own search results (which I think are actually anonymized Bing search results?) are nowhere as near what google manages by personalizing your search. So I'll often add "!g" to my query to get google results rather than ddg ones.
zouhair 12 hours ago 2 replies      
Every time I try to use DDG I ended using !g which kills its purpose, I just use Startpage[0]

[0]: https://www.startpage.com/

Twirrim 12 hours ago 0 replies      
I took the opportunity of starting at a new job to make the switch of default. I've found it to be generally giving me better tech search results than Google. For the most part, however, I haven't really noticed I'm using it, which I'd consider a good thing. It means it does its job without fuss or bother and gets out of the way.
sureshn 11 hours ago 0 replies      
I use DDG full time and it has been awesome , I am a devops guy use DDG to trouble shoot my way out of problems I get stuck in and I have personally found this to be way better than google. The Bang search is very cool too , for example I use it to search github for docker orchestration related content directly ! , I also use DDG command line quite a bit and its really awesome , these are things which I feel are much superior compared to google and I hope DDG will become the geeks most preferred search tool in 2017
macintux 12 hours ago 2 replies      
It's my default engine everywhere. Very happy with it generally, and the fact that I can trivially redirect a search to Google makes it a no-brainer.
roryrjb 12 hours ago 0 replies      
I switched to DDG a few months ago and have found it just as good as Google at least for my usage, at the very least I haven't felt the need to use Google as the results I have been getting have been just fine, and that's without the bangs functionality.
Entangled 11 hours ago 1 reply      
Google, Microsoft, Yahoo, they all have something in common: EaaS. Ecosystem as a Service. DDG should start offering email first, then news, stocks, maps, social, and finally ads. You don't survive with search alone, you need to monetize it on one hand and keep your users coming back on the other.

Oh, I wish it was called something simpler like "Ducker" or "Duckit", but whatever, bikeshedding territory.

equivocates 12 hours ago 0 replies      
I have duckduckgo set on my phone. Recently, I started discovering that when I clicked a google search result link on my phone, google would mask that link and wouldn't actually take me to the webpage. Annoying. DDGo doesn't do this.
isaac_is_goat 12 hours ago 2 replies      
I switched to DuckDuckGo as my primary SE and will be using Bing as a fallback. I'm slowly moving as far away from Google as I can.

On that note, any good alternatives to G-Suite that aren't necessarily Microsoft O365 (though I'm not against migrating to that either). A straightforward email migration is a big plus, documents not such a big deal.

Tempest1981 11 hours ago 0 replies      
They do a nice job of extracting and presenting the top StackOverflow answer:


simias 12 hours ago 0 replies      
I've been using duckduckgo as my main search engine for about 2 years but I never recommend it to anybody. It just feels like a homeopathic remedy to me. What's the business model? I don't allow them to show me ads and they don't allow me to pay for the service. I just can't imagine how that can scale.

Search engines are such an important tool that I would be more than willing to pay $10 a month for a good quality one with strong commitment to privacy and maybe additional premium features.

slyzmud 8 hours ago 0 replies      
I think twice a year I get my antigoogle moment and try to use it, it rarelly last more than two weeks when I don't find something or get frustrated because Google always loads faster. It's a shame. As much as I want to love DDG I find pretty hard to use it for a long time.
Arzh 8 hours ago 0 replies      
I really like that google isn't anonymous and that it pulls everything that I've done in the past to give me better results. I usually have to jump through a lot of hoops to get the same level of results from DDG.
neximo64 12 hours ago 1 reply      
I find duckduckgos results quite bad though, i've given it many shots over the past year but often have to keep switching back to Google.
markpapadakis 11 hours ago 0 replies      
I don't really get DDG. I guess it's nice that they pattern-match some queries and give you a a query specific UI on top of the results or maybe some results UI that makes a lot of sense for the query -- though Google and Bing do that too, and I don't believe they are hardcoding those rules/patterns like DDG seems to be doing.

I 've given it a few honest tries this year but the results are really not that great, certainly far inferior to Google's or even Bing's, and it 'feels' slow -- but then again, a few dozen ms slower than Google is 'slow' to me (and I am sure the difference is higher than that ).

I suppose the major selling point is that it doesn't track your queries and that's nice and all, but it definitely is not important enough for me to trade that for better results and responsiveness.

I wish them the best though.

bobajeff 11 hours ago 0 replies      
>I'm getting a feeling that some day in future, DDG is going to become as big as Google, if not supersede it

If they become bigger than Google what's to stop them from becoming another Google?

Why punish myself by using an inferior service just to give it the seat at the big 5?

gbersac 11 hours ago 0 replies      
If you want a search engine which respect your privacy but with a fancy gui (unkike duck duck go), you should try qwant : https://www.qwant.com/

French technology which work really well !

DrScump 6 hours ago 0 replies      
One of many things that disgust me about the latest big revision to Opera (version 41) is that Opera Mobile doesn't include DDG as one of the (7) default search options (though it does include Amazon, eBay, and IMDB). Ugh.
awalton 11 hours ago 0 replies      
Well, as Google continues dumbing down their search engine, there's certainly room in the market for a search engine with the same kind of power that Google used to have...

...but that being said, DuckDuckGo ain't it. It's in fact, quite far from it. It's roughly as good as old Yahoo Search (pre-Bing), which also nobody used because Google's is vastly superior.

Give me a search engine like Google circa 2010-11 (back before the menagerie of Bird algorithms began trading "fuzzier" results for raw search power) and I'm good.

wesleytodd 12 hours ago 0 replies      
Already have been!!!

Started using Beaker Browser as my main browser, DDG as my search, and am working on moving the rest of my life off google (read: gmail).

Also have been messing with doing more work on a raspi tablet rigged with a bluetooth keyboard/trackpad combo.

greenyouse 9 hours ago 0 replies      
Anyone use DDG's grouping search syntax much?[0] I've always wondered if this is something just for bots or if humans actually write out complex searches like that.

If you use it how are the results?


eeeeeeeeeeeee 11 hours ago 1 reply      
I tried to use DuckDuckGo and it was terrible. Couldn't even last a week. The results were dramatically worse.

And putting aside the quality of results, the actual design of the site is not very good. This is probably a preference, but I find it much easier to quickly scan a Google results page (or even Bing), but DuckDuckGo, with the font face and spacing they use, is not as clear.

zitterbewegung 12 hours ago 0 replies      
I use DuckDuckGo exclusively on my phone. Half of the time I seem to fallback to Google but since you can use !g to get google results I still use it.
jonathansizz 11 hours ago 1 reply      
Questions for you to ponder:

1) Why do you think their results would get better if more people use their engine?

2) If their results really are better than Google, as you claim, why is their user base so small after all these years?

3) Why should we trust them any more than Google? How do you know they're not actually collecting your data or passing it on to the third party engines they use?

id122015 12 hours ago 0 replies      
I am already using it. and when you want a custom Google search that goes through DDG you do: !g 1 byte to MB or any other search you want
DoodleBuggy 9 hours ago 1 reply      
>>> Granted that DuckDuckGo.com is quite a childish name

Call me crazy, but I suspect that's part of the reason DuckDuckGo has had a hard time catching on. A name matters.

If I was DuckDuckGo I would rebrand to something simpler that could be used as a verb. But what do I know?

9erdelta 11 hours ago 0 replies      
I try to use DDG and set it as my default search. But more often than not I end up doing !g. And if I don't, I feel like I'm missing the answer that will really help me work through my coding issues. After awhile, it just gets to be more annoying than anything, and I go back to Google.
arthurz 12 hours ago 0 replies      
But DDG still goes to Google (as well as the other providers).And I see it returns less relevant results compared to Google itself.Where it might be shining is in avoiding the search per unit of time throttling done by Google, and less content tailored by user IP which I see an intrusion into ones privacy.
maaaats 11 hours ago 1 reply      
I can never remember the (short) url, so I end up Googling it so I don't have to spell it out..
baq 11 hours ago 0 replies      
Sure, just make me a chrome add-on that splits the tab in two vertical ones with DDG in the left and Google on the right whenever I search from the location bar which is nearly always so I don't have to search twice when DDG misunderstands what I want.
johndubchak 11 hours ago 0 replies      
@rms_returns, my only question is why are you asking us to use DDG rather than Google? You seem to be drawing some sort of direct comparison to Google, but you're not stating why we shouldn't use Google or what DDG does better.
eriknstr 12 hours ago 0 replies      
I've tried multiple times to switch completely. Currently I use DDG on my iPod touch (which is what I use for web things on the go) but when I'm on the laptop or desktop I stick with Google as default.
Yhippa 12 hours ago 0 replies      
> But a search engine's results are only as accurate as the number of users who search and contribute to it

Are there not privacy concerns about this for DDG?

rb808 12 hours ago 0 replies      
Also use bing more. I know my privacy has gone already - I just want to encourage competition for Google. The results are great 98% of the time.
anthony_romeo 12 hours ago 0 replies      
This is the sort of low-effort post I expect on reddit. And I come here to avoid that.
cpcat 8 hours ago 0 replies      
i got bored from using Google. i like trying new products so i'll go with DDG until i get bored from it.
joeclark77 12 hours ago 0 replies      
The "bangs" make all the difference. Just this morning I used !ups <tracking number> to track a package. I use !w (wikipedia), !gm (google maps), !gi (google images), !yt (youtube) and !a (amazon) all the time. Less often I use !so (stack overflow), !gsc (google scholar), and others. Sometimes I even use !g (google) or !b (bing) if the search results are inadequate. But that's very rare for me.
disposablezero 9 hours ago 0 replies      
Switched to DDG for most things 3 years ago.
yarou 11 hours ago 2 replies      
I actually tend to use Bing. hides
551199 12 hours ago 0 replies      
At DuckDuckGo, no cookies are used by default.

>Yet they do store a cookie by default - this cookie is called "user_segment" and is valid for 1 month after it is first set.[1]

They have removed it but this kind of behaviour doesn't exactly raise trust. Also they are based in US so 'privacy' is just PR.

I would recommend to use startpage.


gist 10 hours ago 0 replies      
> Let's start using DuckDuckGo more often

I am at a loss to understand really why 'us' should start doing this 'more often'. Is there something inherently good about using ddg vs. google? Why should anyone use it more vs. what they have already decided works best for them? This smacks of 'make the world a better place by using ddg' unfortunately as many others have noted it's simply not a better mouse trap. And what does the name have to do with it at all?

coldshower 10 hours ago 0 replies      
DDG is my default search engine because I'm addicted to the !bangs. For example, I use !pf to quickly convert an article into a PDF.

I maintain a blog where I "showcase" the best bangs for the Duck: http://duckgobang.com/

madman2890 12 hours ago 0 replies      
mibbiting 11 hours ago 1 reply      
Adverts on hackernews now eh?
Ask HN: Best place to look for remote jobs?
273 points by mrgrowth  2 days ago   89 comments top 20
calcsam 2 days ago 10 replies      
An old colleague of mine, who'd worked for an LA-based tech company for 10 years, went to hand in his resignation. He was moving to Charlotte so he could be with his girlfriend.

His boss begged him to stay -- he could even work remotely. My friend took the deal. He lives in Charlotte now and flies to LA every 2 or 3 months.

The best place to look for remote jobs is to talk to people who have worked with you in the past and trust you.

taway_1212 2 days ago 3 replies      
The HN's Who's hiring thread is pretty good - I found a remote job twice there, and I'm not even in the US.
spoiledtechie 2 days ago 5 replies      
In all honesty, I work part time on remote jobs. I have a lot of debt I need to pay off, family medical.

I have for the 2 years, applied to 100+ jobs a week. When I don't have work or when I find my current work teetering off, I sit down every Monday, go to 40+ job sites I have collected over time and just apply to as many as possible within the 2 hours or so.

Its hit or miss, but I tend to find something within the month, someone looking for part time remote work.

I am always looking, but since its part time, I get filtered out a lot due to employers wanting full time folks.

Just Hustle. Keep Hustling. Don't stop hustling. It helps me.

santoriv 2 days ago 0 replies      
I've gotten two remote jobs off the HN "Who's hiring?" thread. It can be a bit frustrating. I applied to every single remote posting on the thread for 2 months in a row. So I guess that's one job per month (maybe I was lucky or unlucky who knows).

Following are some of my impressions but they are subjective and perhaps a bit speculative.

Generally I've found that the attitude of most US companies is that if they are willing to hire remote, they are usually only interested in hiring candidates inside the US - even if they are a native English speaker (I was an American living in Vietnam). This is very different than the attitude that I've gotten talking to a companies in say ... Singapore or Germany.

Another thing that seems to happen is that some companies seem to throw the REMOTE OK tag to their posting without considering whether or not everyone on their engineering team is actually ok with working with a remote employee. I've done several interviews with teams that were REMOTE OK but had no existing remote employees. Usually it only takes one person to veto a hire. That's something to think about if they are looking at both local and remote candidates. Unless there is a really compelling reason to hire remote, usually they will go local (makes sense). You might not even want to work with one of these companies because they aren't set up for remote work... communication takes a bit more work from all team members - not just the remote ones.

Overall I've had a much more positive experience with the HN: "Who's hiring?"" thread than anywhere else. I think this is because the first point of contact is often an engineer and not an HR person. My resume is a bit odd and doesn't have a BRAND_NAME_SILICON_VALLEY_COMPANY or a BRAND_NAME_UNIVERSITY so it bounces right off the HR department. It's very helpful to be able to talk technology with someone in the initial conversation. If I can get a knowledgeable front-end engineer to look at some of my previous work, then I usually get to the coding round.

I had no luck with any of the remote hiring sites: remoteok.io or weworkremotely.com. YMMV

Ultimately getting a remote job seems to come down to:

1. Having some kind of portfolio to demonstrate your competence.2. Doing as many interiews as possible. Also the more interviews you do the better you get at it.

Good luck!

pieterhg 2 days ago 0 replies      
Remote work is the #1 perk/benefit for employees now. It's no wonder it's hard to land a remote job because everybody wants them.

The focus should be on increasing your skills, making them more unique and super necessary for employers.

And then use the relationships you have already (eg current employer or clients) to start working remotely.

pablo-massa 2 days ago 5 replies      
Job boards

* http://weworkremotely.com

* http://remoteok.io

* http://remotebase.io

* http://workingnomads.co

* http://authenticjobs.com

* http://folyo.me

* http://jobspresso.co

* http://wfh.io

* http://remotefriendly.work

* http://linkedin.com/jobs

* http://angel.co/jobs

* http://designernews.co/jobs

* http://news.ycombinator.com (monthly posts for freelance jobs)

* http://dribbble.com/jobs (only design)

* http://getonbrd.com (latam)


With broker

Here you apply as a professional, they approve you (or not) and then assign you projects.

* http://toptal.com

* http://workmarket.com

* http://crew.co

* http://hired.com

* http://onsite.io

* http://workingnotworking.com

* http://gun.io

* http://gigster.com

I do not recommend

* http://upwork.com

* http://freelancer.com

* http://nubelo.com

* http://fiverr.com

* http://workana.com

* http://guru.com


Slack communities

Interact with other freelancers. Usually you will find a #Jobs channel.

Free membership

* http://wearedomino.com

* http://designerhangout.co

* http://launch.chat

Paid membership

* http://join.nomadlist.com ($25 month | $75 year | $200 lifetime)

* http://workfrom.co/chat ($5 month | $50 year)

* http://freelance.chat ($25 lifetime)


This list is from an article [1] that I wrote, hope can help!

[1] https://medium.com/@pablomassa/sites-to-get-remote-work-as-a...

mseo 2 days ago 0 replies      
You can filter for remote jobs on stackoverflow:


rrherr 2 days ago 1 reply      
grimsbylad 2 days ago 0 replies      
I'm not sure if there really is a best place to look for remote jobs. It depends. I personally don't like aggregators as it's so easy to overlook a job post. I prefer visiting individual job boards. As a side note, I do agree with some of the comments in this thread. The best way is of course to talk to people you know and have worked with in the past. Meetups and events can also be a great place. Perhaps it won't land you a remote job today, but it may in the future.

What kind of remote jobs are you looking for? Tech or non-tech? I've generally found weworkremotely and the HN hiring thread to be among the best. If you're interested in remote jobs at startups, AngelList have a special collection for you https://angel.co/job-collections/remote/

It might be worth your time to look through http://nodesk.co/remote-work/ for a collection of remote job boards (it's a list so visit them all and save the ones you find useful) as well as http://workintech.io/ (job boards specifically geared for tech jobs).

Let me know what you're looking for and perhaps I can help point you in the right direction.

goldfishcaura 2 days ago 0 replies      
If you do data engineering, you can work with me: https://www.caura.co- my clients are all remote
AdamGibbins 2 days ago 0 replies      
DoodleBuggy 2 days ago 0 replies      
Many I know with remote positions had worked at the company previously and then went to move or quit, and was given permission to work remotely. Obviously one needs to be an effective employee for that to be the case, and not mind occasionally traveling.

Otherwise you could seek employment at a place known for having primarily remote workers.

Contract work and freelance is also easy to remote.

spoiledtechie 2 days ago 0 replies      
http://weworkhourly.com/ is a good site for jobs.
49531 2 days ago 0 replies      
I've worked remote for the last 3 years with two different companies and found both on HN who is hiring posts.
fastftw 2 days ago 3 replies      
Toptal! If you want a referral, let me know! https://www.toptal.com/talent/apply/#book-just-devoted-progr...
ryandamour 2 days ago 1 reply      
I'm a Sr. Security Engineer at a security firm called Defense Point Security. We are always looking for remote talent. Feel free to shoot me an email at ryan.damour@defpoint.com with your resume!
Ask HN: How do you choose the programming language for a project?
30 points by happy-go-lucky  1 day ago   30 comments top 17
gdulli 1 day ago 1 reply      
I choose Python because it's the only one I enjoy. Around 2008 I was losing interest in being a developer. I'd used Perl, Java, C, PHP, Javascript, VB/ASP for various jobs and there wasn't anything I enjoyed using anymore. I started to doubt if I was in the right profession. It wasn't fun as it once had been.

I learned Python and it made me enjoy writing software again. 8 years later and it's nearly the only language I use. In principle it makes more sense to choose the right tool for the job, but if I don't enjoy doing the job with other tools, it makes sense to plan around the tool.

I avoid mobile or front-end web development because Python isn't the right tool for those jobs. Fortunately, I like server-side development and data engineering and Python fits perfectly there.

framebit 1 day ago 0 replies      
It's like asking what tool should I use for my construction project. Well, are you pouring concrete? Are you doing electrical wiring? Are you working with wood? Are you painting?

Want to build an operating system in Ruby? Ok, good luck trying to pour concrete with your tablesaw.

Admittedly, that analogy is a little extreme since programming languages are Turing complete, etc etc. However, if that's your perspective, you may want to have a gander at Cobol on Cogs: http://www.coboloncogs.org/INDEX.HTM

greydius 1 day ago 0 replies      
There are a lot of variables that go into this decision.

First of all, is this a solo project or is a group of people going to be working on it? If it's a solo project, then you are far less constrained. If it was a small proof of concept or otherwise throwaway project, I'd probably use it as an opportunity to try a new language. If it's a real deliverable and doesn't involve hard real time performance, I'd choose Haskell because it's a language with which I'm proficient and I enjoy using.

If this project is going to be developed and maintained by more than just myself, then the story changes. With an existing group of developers, you have to play to their strengths and get buy-in, so use either a language they already know, something similar, or something they've shown an interest to learn. If you don't yet have developers, consider the difficulty of hiring for certain technologies. There are also performance and correctness requirements to consider.

If you happen to be an enterprise decision maker (which is unlikely since this is a community for intelligent critical-thinkers) then the only correct choice is Java. No one gets fired for choosing Java. There's a framework for everything. There are plenty of cheap developers. It's popular, so it must be good.

davelnewton 1 day ago 0 replies      
1) Do I/the team know it well enough to be productive?

2) Does it suit the nature of the problem?

3) Does it have a large enough ecosystem to address my/our needs?

4) If it doesn't, do I/does the team have enough time to fill in the holes?

5) Can it be deployed in a reasonable way?

jetti 1 day ago 0 replies      
It depends on a few factors.

First, what is the type of project? If desktop, then C#/WPF (since my desktop apps will always be Windows). If web, then the choice becomes more complex.

For web, am I going to be solo? If so and there isn't a compelling reason to pick a specific language (be it because of its strengths in a specific area or environment constraints) pick whatever language I feel like learning or already know (if it needs to be rushed then pick a language I know).

If I'm doing web and going to have a team, then pick something that I find interesting, that fits the needs of the project and I can find people if need be. I'm currently working on a project that is just me but will eventually be a team of people (somewhere down the road). I chose Elixir/Phoenix because it is something I want to learn and there is no specific reason for picking some other language. I've heard enough about Phoenix and Elixir to know that I could find some Ruby/Rails devs to teach them Elixir/Phoenix if I wasn't able to find elixir devs, so making a team isn't a big deal.

imauld 23 hours ago 0 replies      
For personal projects I pick between Python and Go. I ask myself some questions before I pick, in no particular order:

- How complex is the thing I wanna do? If it's very complex I'll go with Python since I'm much stronger with Python than Go. This allows me to focus on the problems I'm trying to solve not the ones I create by misunderstanding something in Go.

- What are going to be some of the key features I'll need from my tools? Concurrency is not a strong point of Python so something that requires it may be better off in Go. Am I going to need auth, email sending, an ORM? Django is great for getting that crap out of the way so I'll probably use Python.

- How much new stuff will I be learning for this project? Most of my personal stuff is done as a learning exercise. I have found in the past I tried to learn too many things at once and I would just end up lost.

These are just some of the things I think about before choosing a language. However, your milage may vary of course. What ever questions you ask yourself you should always keep in mind the strengths and weaknesses of your options and whatever you do end up choosing you keep those strengths/weaknesses in mind and work to make the most of the strengths and use other tools/processes to mitigate the weaknesses.

cauterized 1 day ago 0 replies      
Is the purpose of the project to learn a specific new language or framework? Problem solved.

Does the project involve certain functionality that's already been solved in a framework or library available only in one language (or at least not in any languages that my team and I are already proficient in)? Will it be faster for me or my team to learn that language thoroughly than to reimplement the functionality?

Is the project being implemented on a platform that only supports a limited set of languages officially (e.g. iOS or client side web development)? Pick the most widely used of those.

Otherwise the project gets done in the language I enjoy most and am most proficient in (for personal projects). Because that'll be the most fun for me.

Or the language my team collectively knows best and were hired for their knowledge of. Because that makes knowledge transfer and future maintenance easier.

Macha 1 day ago 1 reply      
If there's some compelling library or specific reason to use a certain language: That one

Else if it's for work: Java and/or JavaScript

Else Python

sheraz 1 day ago 1 reply      
Easy. Which programming language is best at running Django? Ah, python it is :-)
khedoros1 1 day ago 0 replies      
Most of what I've done professionally has been C++, which suits me because I actually like the language. That was chosen because the system in question was designed in about 1998 and has accordingly grown in scope during that time.

I've used Perl and Python for small applications and glue code. I liked Perl for a long time, but I don't want to go back to it after using Python.

Most of my personal projects are written mostly in C++, sometimes with bits in C, because they're suitable for emulators, game engines, renderers, Arduino programming, and robot control code and because (as previously stated) I like working with them. I've been meaning to start some things in Rust, but haven't gotten around to it, in any serious kind of way.

I choose employment based partially on what language they're working in. Systems-level stuff on Linux? Probably C or C++, so I'll probably be happy.

stolk 1 day ago 1 reply      
Step 1: You choose C.Step 2: There is no step 2.

You can keep it simple.

gravypod 1 day ago 0 replies      
There are concerns that go into this

 1. Your time 2. Machine time 3. Others time 
Balance those three. Your time is saved by finding a language they already had good tooling and libraries for your task. Machine time is saved by picking the fastest language for this task. Sometimes you want a jit sometimes you need native code because you're running embedded. Others time is spent maintaining the stuff you build so using a language others already know saves them time.

Balance those three to find what works. Need really fast code? Sacrifice your time and co-workers time. Need really maintainable code? Sacrifice your time and machine time. Need really quickly written code? Sacrifice machine time and co-workers time.

danielvf 1 day ago 0 replies      
Mostly based on the strengths of the team that will be growing and maintaining the project.
chillaxtian 1 day ago 1 reply      
1) is it a client side application? use the native language

2) use java

ryanmccullagh 1 day ago 0 replies      
My personal projects for the past ~3 years have been systems level projects, so I choose C, naturally.
AnimalMuppet 1 day ago 1 reply      
I chose Java. Why? Well, three specific things made that specific task much easier - polymorphism, reflection, and garbage collection. And I knew Java.

The reflection part I could have gotten around fairly simply, but I'm happy with how cleanly it worked with reflection. Polymorphism was a must-have, and garbage collection was close (it might have doubled the amount of work if I didn't have it).

fishtaco000 1 day ago 0 replies      
If it is internet facing you probably would do yourself a favor and write it in a secure language like Rust.

Otherwise C# is easy and reliable. Less secure than Rust, but less of a concern if it doesn't face the web.

Ask HN: How do you find time for open source?
32 points by ffjffsfr  1 day ago   21 comments top 16
cauterized 1 day ago 1 reply      
Why do you want to contribute?

It's a myth that in order to be a good software engineer you have to spend every free moment coding or that you need to be an open source contributor.

It's also a myth that all or even most employers will ignore or ding you if you have no contributions.

If you want it enough for yourself and for its own sake, schedule one evening (or weekend afternoon) a week for it - just as you would schedule one evening a week for date night or for volunteer work or for anything else you care enough about. Treat it as similarly inviolable.

That goes for anything outside work you want badly enough - learning to play the flute; writing a memoir; whatever.

biztos 1 day ago 1 reply      
If you use open-source software at work -- which you almost certainly do -- your employer might not mind if you spend a small, fixed amount of time every week improving that software.

You should ask your manager. First identify what you'd work on, then make an argument for how improving it would be good for the company as well as the public, and finally (if needed) try to sell them on the PR and recruiting benefit to the company. Propose a specific chunk of time for it, so your manager doesn't have to worry about you disappearing down a rabbit hole. (I might suggest the last 4 hours of the week, when not much gets done anyway.)

If you work for a larger company there may be policies around this, and they are likely to make it more difficult. But as a developer, you only need your manager's approval.

If you work for a smaller company you'll have a much easier time selling the idea. And if it's really important to you, consider working for a company that actively supports this.

lhorie 1 day ago 0 replies      
The great thing about doing open source work is that you decide how much or how little time you want to put into it.

I have a full time job and two small kids. I'm usually out of the house with the family on weekends, and after work, I sometimes play video games or read manga. I rarely ever attend meetups or hackatons because I live and work uptown and frankly don't have time to be driving downtown.

Yet, I still find time to work on my project (usually after the kids have gone to bed). I used to also do it on the commute when I took transit to work.

There's really no real secret to doing open source. Working on my project is something I truly enjoy doing, so I often "stew" on problems and next steps while driving or eating or before falling sleep, and on the nights I feel like working on the project, I just sit down and do. If sitting down to do open source feels like a chore, then it probably isn't for you (and there's nothing wrong with that!)

Like anything else that might get stalled by procrastination, every time you sit down to work, you just have to pick some small thing to complete, so that you can get into a roll.

Working on open source to scratch an itch is also a good way to incorporate open source into your day job.

jetti 1 day ago 0 replies      
I am working as a moonlight freelancer and starting my own software business while working full time and managing my family (though no kids currently which makes managing family a bit easier). This isn't the same as OSS but it is the same principals. When I have free time I work on what I can get done. I have a 3 hour daily commute which is on the train so I have about 2.5 hours of work I can get done a day. Then there are times when the wife and I are just watching TV that I can work. Basically, I get my side work done whenever I have free time. I think OSS isn't going to be like your 9-5 dev work where you are able to sit down and code and pump out features. It is going to take more time because you aren't going to be working on it every night, for the most part.
Bahamut 13 hours ago 0 replies      
I'm currently busy these days (became a tech lead/engineering manager hybrid), but if I want to work on open source, I just go ahead and get involved - read the READMEs, CONTRIBUTING.md, peruse the issues, debug the reported issues...and come back with findings, opinions, or sometimes a PR or few.

There is no shame in not contributing to open source - most developers don't do much beyond using it. There is also no shame in failing to bring new insight. I would say that make sure that it is something you enjoy doing, because otherwise it will tax your mind some to force yourself to make the effort.

mbfg 1 day ago 0 replies      
I think the answer is, "how do you find time for other things besides open source?" People do open source because they love it more than most other things, and so other things suffer.
git-pull 1 day ago 0 replies      
> How do people implement some larger features that are time consuming and require several days or months of work?

Did tons of open source at work. A bulk of my open source early on was fixing gulp, grunt and jquery plugins that would often break when API's changed.

To get your foot in the door, start by patching other people's projects. That can be as simple as a typo or adding docs initially.

On any project, the first thing I do is almost always low hanging fruit. I clone it and try to build it from source on OS X, Debian, FreeBSD and fix anything wrong with the build system or tests. Often just right there I can get a few patches in or segue it into a larger fix [1] [2]

I built up from doing small stuff to then doing big things, and eventually my own projects like tmuxp [3]. Small stuff means you get an opportunity to lurk and understand the codebase, tests and contribution guidelines.

You can also find a mentor. Open source programmers are always looking for a protege who is passionate about the codebase. Hang out on IRC with them and say hi. Look at the milestones to see if there's any quick wins to get started with. If you work at a company that uses the project, be sure to mention it. :)

[1]: https://github.com/python-cmake-buildsystem/python-cmake-bui...[2]: https://github.com/aseprite/aseprite/commits?author=tony[3]: https://tmuxp.git-pull.com

khedoros1 1 day ago 0 replies      
I've got a few projects on Github. My kid goes to bed at 9. My wife and I often spend time watching TV when he's in bed, and that's a good time for me to multitask and add some code to my projects. When I really want to work on something, time is made. Most of the time, I judge the rest of my life as more important, but if you've got an itch, you can't avoid wanting to scratch it.

I'm not going to work on anything remotely work-related in my spare time, though. I'm not interested enough in the work I do for my employer to also make it my after-hours hobby.

runT1ME 1 day ago 0 replies      
I've gotten to a point where doing Open Source can be a way to relax. Some nights I'll put on some good music I can code to, have tea or a scotch, and tinker around without the pressure of getting something done on any particular timeline.
dfdashh 1 day ago 0 replies      
The trick for me is to break things down into manageable chunks. It may be a larger feature, but it isn't anything that a git branch can't handle. I try to keep the effort in half-hour increments, because with two small kids there just isn't room for anything bigger (most of the time).

Also, I'll often briefly open up some code at work while I'm eating lunch just to get my mind going on it. A quick scan of the structure allows me to then break away from the computer to walk/think/socialize while my subconscious mind chews on whatever the problem is. Whenever I find a free chunk of time, I'll already have a rough idea of what I can do to push that needle forward. It's then just a matter of doing it!

dolftax 1 day ago 0 replies      
We use a lot of open source packages at work and if something is wrong, it is equal responsibility of us to fix it. The hardest part (or) blocker is understanding the large codebase (A good read - http://devblog.nestoria.com/post/96541221378/7-strategies-to... ) Don't be afraid to ask questions in IRC (or) mailing list. Get started with mentored bugs. When you fix couple of bugs and understand the codebase, you will make/find more time to contribute to the project.
stephenboyd 1 day ago 0 replies      
For now, I don't. I'm busy working on paid proprietary projects for my clients. I'll have to save up more money before I choose to dedicate a working vacation to OSS. I spend a good portion of my non "working" time on learning more technical skills that are directly related to my line of work. When technical study, travel, rest, and money become lower priorities (and they certainly will), I'll do some significant OSS work.

Also, one my clients is interested in open-sourcing one of my projects. I'm excited about that, but it's not the same as "finding the time."

ht_th 1 day ago 1 reply      
I am hosting a hacker space twice a week, on Wednesday evening and Saturday afternoon. Although these are certainly social events, I do make sure to spend at least half my time there working on one of my free software projects. As an added bonus I can tell our guests all about it while working on it.

It does not matter if I am unable to finish a task, because I'll be working on it during the next hacker space meetup. Yes, oftentimes it is slow going, particularly when we're having fun, but it gives me two clear structured time slots a week to work on my projects.

ConAntonakos 1 day ago 0 replies      
I'm in the same situation. We're a very small team (8 total), so I barely find time to contribute back among other events like trying to relax, personal development, entertainment, etc. I think I might have to carve out one day or a couple hours on a specific day of the week that'll be my "open source time". I look at it almost every day, but don't have enough alone time with the open source software (like React.js) I want to work on.
brootstrap 1 day ago 0 replies      
Yeah I am with you... If it's not a habit it is hard to do. Personally when i'm done with work I want to go play Dark Souls :p. Weekends though I will get the itch a little bit and saturday/sunday is when I can work on my own projects. Still lots of weekends are spent visiting folks and such so that free time is limited.
billconan 1 day ago 0 replies      
I try to spend 2 hours each day on open source or learning.

usually around dinner time (before or after dinner).

my problem is not that I don't have time, but that I don't have a focus. I do a little bit this and that.

Ask HN: How did you teach yourself a second language?
14 points by mattwest  1 day ago   12 comments top 9
sova 23 hours ago 1 reply      
Okay you gotta immerse yourself as much as possible.

From experience, you gotta learn that language is like a filter through which ones' mind/heart/intentions are shaped. Then, you master getting into the pre-language state of mind that has no language, and from there you train yourself to see the world with a different organization of concepts.

First, learn the 200 most common words in the language.Do whatever it takes to learn all the verb conjugations.Spend countless hours listening to real humans talk in conversation and repeat exactly as well as you can over the tracks whilst listening (like singing along to a song) so you can master the ups and downs of tonation in pronunciation.

Top 2 tips:One) 15 minutes every day is worth so much more than 150 minutes in one day every 10 days. Meaning: frequency is key, and quality over quantity.

Two) to truly become "fluent," that is, to make the leap from "this is something I can use" to "re-experiencing life through the frame of a German person / Japanese person / Swedish person / whatever" you must spend time in a place culturally saturated in the language.

That said, you can spend 2-3 years of your life immersing yourself in radio, news, television, movies, and learning mnemonic methods (whacky stories and images that help you retain meanings) and make incredible progress.

Broken_Hippo 14 hours ago 0 replies      
Immersion helps.

But outside of that, there are some great suggestions. A few things I have to suggest:

Get ahold of some of the books and workbooks for adult learners. This is an easy way to learn grammar and common phrases. I'd use these in conjunction with other things.

Next, watch children's cartoons. Here (Norway), adult films often simply have subtitles and leave the English audio, but children's shows are dubbed with simple words and clear language. It is a bonus if it is a crossover - I watched many hours of "Spiderman" cartoons in Norwegian.

Read books, especialy ones you've read in English. Harry Potter, for example, is available in multiple languages. It'll be difficult at first, but you'll increase vocabulary from the repetition in the book. Terry Pratchett is another choice for German, at least (I can find some in Norwegian).

For speaking, Skype is popular for tutoring and speaking practice, though you might have to pay for this.

Good luck :)

pmontra 1 day ago 0 replies      
I wasted 8 years studying English at school without being able to write this sentence (I'm sure I'm still making mistakes but you get the idea.) I could read basic software documentation and school books, but nothing real. Then I subscribed to Newsweek and started playing Nethack. Both built my vocabulary. Reading Newsweek was a pain at first, one article per week with the dictionary constantly open. Eventually that let me read anything. A couple of years of English courses paid by my company made me able to understand people. I understood 50% before that. Then the Internet, movies, TV.

If you're not in Germany or Russia, get a teacher with a small class. Mine was 4 people so we could speak and exercise a lot.

silvaben 21 hours ago 1 reply      
I've had success with Duolingo.

I've been doing Duolingo's French lessons every day for 15-20 minutes during my commute to work. I find it quite engaging and useful.

zhte415 15 hours ago 0 replies      
Move there, live there. If there or not, a recent link from HN is global radio. Plenty of talk stations in different languages and dialects. http://radio.garden/live/
120bits 1 day ago 0 replies      
I have started learning French few months ago. I started with Duolingo for couple of weeks to get the basics. I liked there tutorials. The APP even has a built-in messenger where you can chat in French with a bot(guessing same for German too).

The first book I read was Beauty and the beast in french. It's a short story to start with. It took me a long time to just read some sentences with proper pronunciation and I'm still working on it. I look up youtube videos for some extra info. The frenchpod101 videos are good. I guess you might have already tried these, but just wanted to mention it anyways. Hope this helps! Good Luck!

sheraz 1 day ago 0 replies      
Live there. Immersion. Anything else is a distant 2nd and you will never "feel" the language.
pasbesoin 8 hours ago 0 replies      
Find shows, movies, music that interest you. Watch them (with subtitles). Listen to it.

A lot of language learning exists below the "level" of words and sentences. The sound of a language.

And even when you progress to words and sentences, phrases, idioms, and the like differ. Gender exists, or differs. Native speakers don't memorize these. They learn by absorption. You are fortunate in that, with today's connected world, so can you.

P.S. The rest of it, e.g. working through texts, tutoring videos, and all that, I leave to you. Just remember: EXPOSURE. And that you can't and shouldn't try to consciously process and monitor it all. Steep yourself in it, and let your whole mind (including sub-conscious, or whatever we're calling it) process it.

P.P.S. Approach it this way, and you will find that some of the "much harder than when a child" belief doesn't actually really of fully apply. I became conversational in French, starting from zero, in about seven weeks when I was 22. In the middle of Vermont.

kobeya 1 day ago 0 replies      
Ask HN: Every website wants to send me notifications
60 points by ankit84  1 day ago   40 comments top 22
untog 1 day ago 3 replies      
I'm surprised you are seeing this with "most" sites - I barely ever see it, but I agree that it's infuriating when I do.

I don't think this trend will last, though. If a user denies the notification request then the site is never allowed to ask again - the user has to manually enable the permission. People are going to learn quite quickly that if you don't put the request in the context of a specific action you're screwing yourself over.

That said, I wouldn't mind it if these prompts could only be shown in response to click events. Small downside, but it would stop the request spam quite effectively.

sdfjkl 1 day ago 3 replies      
That's what RSS is for, no? Keeps the subscription under your control, you don't have to share anything with anyone, you can unsubscribe easily and it's trivial to anonymize through a reader that caches/proxies the requests.

Perfect for the end user. Not so perfect for the spam industry, of course, but whenever those guys get to decide how something on the internet should work it always turns ugly, so that really has to stop.

shortoncash 1 day ago 0 replies      
I actually like this feature. It's more useful on sites that don't update as frequently or have more obscure content. However, I really dislike notifications from the mainstream websites because I was going to visit them during the day anyway.
bazzargh 1 day ago 1 reply      
Chrome lets you disable that request: Preferences->Show advanced settings->Content Settings (under 'Privacy')->Notifications

Select "Do not allow any site to show notifications"

Myself, I find this just as bad as the constant overlays asking for you to sign up to a mailing list. I use the 'Behind the Overlay' extension to kill those, but I'd like something that prevented them appearing in the first place.

adrianN 1 day ago 0 replies      
If I want notifications from a website I add its RSS feed to my reader.
brianprovost 1 day ago 0 replies      
I've never clicked allow. I don't turn on notifications for phone apps either though.
return0 1 day ago 1 reply      
And every blog (and not only blog) asks me to subscribe to their newsletter before i even read the article.

Are these things so effective that everyone uses them?

BurningFrog 1 day ago 0 replies      
My main annoyance is that I'm not sure what they're asking for?

What kind of notification? How does it work? When/where will I be notified? How would I turn it off?

ankit84 1 day ago 0 replies      
Example: Never miss a great news story! Get instant notifications from Economic Timeshttp://economictimes.indiatimes.com/news/economy/finance/gov...

This news site is showing a custom popup to ask for permission and blocking the content.

rwieruch 1 day ago 0 replies      
Google will punish pop ups in the future. [0] I heard something about early 2017, but cannot find where it's written down.

- [0] https://webmasters.googleblog.com/2016/08/helping-users-easi...

superplussed 1 day ago 2 replies      
I don't think it is ruining the experience because it's easy to not allow them, my question is: how is it that so many people are clicking allow that businesses see it worth the annoyance to add this to their site. That's what baffles me.
jsz0 1 day ago 0 replies      
One good thing about web notification requests is you can use them as an opportunity to evaluate what sites you want to continue reading on a regular basis. When I get a notification request I always stop and think about it for a minute. If a site isn't notification worthy then is it worth reading everyday? Sometimes yeah but I've been able to purge a lot of sites of my daily reading list using this method. I was surprised at just how many sites I was reading purely out of habit. Being forced to judge their quality / importance to me was super helpful.
awinter-py 1 day ago 0 replies      
Increased engagement from the users who stay is more visible than the attrition of the users who don't return because of notification overload.

There's a 'silent majority' effect when you measure the impact of a feature that increases engagement.

Imagine a feature causes 50% of users to immediately read another article and the other 50% to never return. That may look like a win after 2 weeks of testing, but the long-term effects on your business can be iffy.

ryanmccullagh 1 day ago 0 replies      
Notifications are the most annoying thing ever. Facebook innovated on the notification icon and concept back in 2008 or so. Since then every one has followed their path. I do not like notifications on my phone unless it is for my email and I am currently on call (Thanks FastMail for having an amazing notification system (real time)).
prophesi 1 day ago 0 replies      
I think the best way to go about it is to have a switch/checkbox for the user to opt-in. Only then will the browser prompt the user to enable notifications. It's trivial to make this change.

I'm amazed so many sites have this feature, because it was an absolute nightmare for me to get it working alongside Google's sw-precache library.

tedmiston 1 day ago 0 replies      
I've been tossing around building a global notifications blocker.

You could turn it on / off when you just want to browse Facebook or whatever site without the notifications and that tiny red badge nagging you away from what you're doing.

caleblloyd 1 day ago 0 replies      
I run Slack in it's own Chrome Window via the Add to Desktop Feature in the Chrome options menu. With Notifications Enabled it is a viable replacement to the desktop app.

Slack's Desktop app is built on Electron, so it's a second installation of Chrome anyways.

tzs 1 day ago 0 replies      
Has anyone got lucky and had a site do all of the following on the same page?

Ask to send notifications,

Ask to use your location,

Say something about you not having the SharePoint plugin or asking permission to use it or something like that?

nkkollaw 1 day ago 0 replies      
I hate those in news sites, but I did find them useful for a couple of websitesmainly where I was waiting for a reply for an auction or booking request.
kareldonk 1 day ago 0 replies      
Subscription popups/overlays are the anti christ
agumonkey 1 day ago 0 replies      
Maybe reverse the behavior. Instead of asking, make it a standard feature in UI:

Alt-N => browser pop under:

[offers notifications][show all][show some]

Or maybe just some icon in the url bar ?

rootme 1 day ago 0 replies      
Is the new Pop Up Banner Option?
Ask HN: What are your tech predictions for 2017?
9 points by mathgenius  14 hours ago   2 comments top 2
baccredited 6 hours ago 0 replies      
Hordes of HN readers will continue searching for 'passive income' which basically doesn't exist.

People of HN: sell your dev skills for money and invest the money in assets that appreciate!

Zikes 11 hours ago 0 replies      
I think VR will see mainstream success, as exposure to the technology hits a critical mass, the (mostly financial) barrier to entry falls, developers get more funding, and they get a better idea of what works and what doesn't.
Ask HN: What's the best premium online course you took in 2016?
6 points by jurnalanas  1 day ago   2 comments top 2
mindcrime 1 day ago 0 replies      
What do you mean by "premium"?
MichaelBurge 16 hours ago 0 replies      
I liked the Udacity Self-driving Car course:


Spamhaus issue advice needed
4 points by worthshare  15 hours ago   2 comments top 2
tinus_hn 14 hours ago 0 replies      
So you registered multiple domains and the first thing you decided to do with them was check if they are on Spamhaus? Such a coincidence that you would find out they all are!

You may have bought domains that were used for spamming before you had them. If so, you can contact Spamhaus to be removed from the list. It'd be a better use of your time to just get new, non tainted names, because if Spamhaus is listing them so are many others.

Realistically it's more likely though that you yourself are the spammer. For instance, you bought some new domains, started blasting out emails advertising them and found out your mails got blocked for spamming. There is no solution for that apart from stopping spamming.

aurizon 14 hours ago 0 replies      
Did you tell any friends or associates about these new domains? One of them is a rat.To test, register another 10 domains, then leak 2 of them to each of 5 friends/associates and see which ones end up on spamhaus
Ask HN: Small projects to improve web performance coding skill
6 points by sofyan  1 day ago   4 comments top 2
imauld 23 hours ago 0 replies      
Odds are the biggest bottlenecks in any webapp are going to be the DB and the network itself. So unless you're doing some really complex computations your actual business logic likely won't be taking up most of the time between a request and a response. So you can work on something that will help you tune DB queries or you can take the DB out of (some) of the equation(s) and learn how to make good use of something like Redis or memcache to reduce DB load. Learn how to use a CDN to decrease static asset loading time.

I would also checkout this talk: https://vimeo.com/147806338

It's pretty long but it's pretty funny and should give you some things to think about. There aren't any technical examples or demos but it's a good high level talk about the balloning size of web pages.

generj 23 hours ago 1 reply      
I'd make a small single page website with a few fixed parameters (and maybe a few database calls) and then optimize everything on it using Google PageSpeed and other resources [0]. Make a script which runs during check-in which measures speed changes and have a contest to see who can reduce the speed the most.

A good example of this is the homepage of t.co which clocks in at 3.08 kb and yet looks fantastic.

[0] https://developers.google.com/speed/pagespeed/

Ask HN: What are your greatest tips to hire freelancers?
9 points by ZenoSchool  12 hours ago   2 comments top 2
matbram 10 hours ago 0 replies      
Don't take their word that they can do something. Never hire without proof of their skills and examples of their work.

Also, communication is a big factor in hiring a freelancer. If you are outsourcing something to someone in another part of the world, watch out for timezone differences as well as making sure the person is a good communicator.

It's also just good general advice to always have them invoice you, just so you can have it on record for tax purposes.

crystalPalace 9 hours ago 0 replies      
Have a contract ready as soon as possible. Don't leave your freelancers hanging. It's better for both of you if you are under contract.
Ask HN: Did you build it, and they came?
14 points by a_lifters_life  15 hours ago   8 comments top 4
chuhnk 14 hours ago 1 reply      
I built this https://github.com/micro/micro. It's doing pretty well so far.
gschier 10 hours ago 1 reply      
I've been working on https://insomnia.rest for about two years, and have had steady growth since the beginning. It used to be in the Chrome Web Store, which helped attract users initially.

It's now at around 2500 daily active users.

19kuba22 8 hours ago 0 replies      
I built a betting platform for a niche esports game and had moderate success with it. Mostly word of mouth, but it was a small dying tight-knit community desperate to attract knew players so it wasn't hard to get everyone interested.

EDIT: Working on a product for a community I was part of was definitely what helped me succeed. I worked on the problem I was familiar with, and I received a lot feedback and support from other people. It also helped me stay motivated. :)

reolbox 14 hours ago 1 reply      
I have built a quiz web app that enables people to play a popular Belgian TV format at home with their family and friends and with their own questions. Without any marketing, they came :). I am at 5000 active users and counting. People seem to love playing popular tv-shows at home.
Ask HN: What was your greatest accomplishment in 2016?
171 points by kernelv  3 days ago   301 comments top 131
cyanoacry 3 days ago 3 replies      
When I was a little kid, I rented out Apollo 13 almost religiously. Kept watching it, admired the guys in mission control (and the astronauts too, of course).

A little later, in April, I sat in mission control and helped launch a spaceship to the ISS.

Along the way, I realized:

Engineering in the real world is maybe 30% calculations and typical "sciency" work, the other 70% is documentation and communicating to people. The day-to-day in the aerospace industry is way different than the way things are taught at school (from an EE perspective). It's impressive to me how much design happens in everyday back-and-forth conversations, versus the common image of "one guy, hard at work, cranking out equations at his desk".

Being smart isn't enough sometimes -- you need to have discipline as well, and even then, there is a considerable amount of luck in the mix. Getting the timing for a presentation, or a forcing a decision at the right time, can make a huge difference in the success of a program. You kind of have to check all three boxes to max out your success counter: smarts, determination, and luck.

maneesh 3 days ago 10 replies      
After years of R&D, heartache, and rough decisions --- I finally turned my hardware company (http://pavlok.com) profitable! We make technology to break bad habits, wake up earlier, and reduce cravings.

I decided to try to build a hardware company without raising VC --- which is probably one of the hardest decisions you can make. And required about 30 people to make a reality.

But now that we have finally got our manufacturing and supply chain working, I've been building our sales & marketing team --- and I can't wait to see how 2017 progresses :)

JshWright 3 days ago 5 replies      
2015 was a pretty rough year for our family. A miscarriage, several relationships ending in painful ways, etc... Our motto coming in to 2016 was "Well... it can't get any worse!". Our hubris was 'rewarded'...

In February, my wife was admitted to the hospital, 25 weeks pregnant with twins, because one the babies was not getting enough blood flow through the umbilical cord. The doctors were hoping to get another week or two before his condition deteriorated to the point that delivery was necessary. Things did not go downhill as quickly as expected, and we were able to put off delivery by two months, to 33 weeks (technically one day shy...). While this was a huge blessing, it still meant my wife was in the hospital for two months, leaving my as a 'single parent' of our three year old, while still providing the support my wife needed (spending two months in the hospital is pretty rough on anyone, let alone someone coping with the stress of a high risk pregnancy).

Our sons were born 7 weeks early, weighing 3 lbs, 14 oz, and 1 lb, 13 oz. The bigger one spent three weeks in the NICU, and the smaller one was there for almost two months (coming home just before his original due date). So, at one point, we had a three year old at home, a newborn at home, and a newborn at the hospital (and my wife still recovering from a c-section).

Everyone is doing well now (the little one is lagging behind his 'little' brother (younger by 1 minute), but still within the normal range, and on the right trajectory).

So, my greatest accomplishment was managing to set aside more or less any concern I had for myself and spending every waking minute, for four months, either working or taking care of a family member. In the process I learned just how fortunate I am that, generally speaking, I have a tremendous amount of freedom in how I spend my time. Being in a position where every moment is consumed in the care of others is exhausting, both physically and emotionally.

Our motto for 2017 is "It'll be what it is"... (why tempt fate again?)

daeken 3 days ago 6 replies      
I finally admitted that it was time to start back on antidepressants, and also discovered propranolol (anti-anxiety med); it's changed my life in the most dramatic ways I can imagine.

As of today I weigh 319 lbs -- from a peak of over 400 -- and just a hair over half way to my goal of being at 240 lbs. This is the biggest change I've ever made in my life, and I couldn't be prouder to have come this far.

ciscoriordan 3 days ago 2 replies      
I accepted a job at Rothenberg Ventures in 2016. After discovering numerous breaches of fiduciary duties and wire fraud, I blew the whistle to the SEC.

Lesson learned: Even engineers have to face ethical dilemmas.

ikeboy 3 days ago 2 replies      
I started selling online, total sales so far over $300k. Multiple sources, some retail, some wholesale.

What I've learned:

1. Not all rules matter. A large part of my business is stretching certain rules, either from the marketplace, or from the source (e.g. a store that doesn't allow resale). That said, you can't get away with breaking rules unless you have a very good understanding of why the rule exists, who's motivated to uphold it, and generally what the risks are. Don't screw over customers.

2. There's a lot more to be made by taking risks than there is to be lost. I've easily lost over $1k multiple times in various ways, but when I "win" it's to the tune of 10 or 30 times that. Take smart risks, only where the realistic upside justifies it.

3. Be willing to pay for information. There are courses out there in almost any topic. Personally I've largely carved my own path and paid very little , but I'd still recommend courses for others. Also read a lot of whatever free information is out there, and network with people who have more experience.

4. Don't do too many things at once. It will kill you. I've been full time in college and it's extremely tough to balance everything. Delegate as soon as you can afford to, anything others can do that doesn't take a lot of brains pay people to do.

5. Don't be afraid to scale, but do it slowly. My first purchase of over 10k was 6 months after I started, iirc.

(Several of these are probably specific to this kind of business, may not be generally applicable. Startups have a much different road where profitability isn't the most important at first.)

LaSombra 3 days ago 3 replies      
I landed my dream job 20 years after I decided what and where I wanted.

It took me a lot of time. Battling low self-esteem, giving it up for a while, following the wrong path, surviving after being fired for the first and only time.

I learned perseverance. Once I set my mind on it and worked around distractions, people and my own mind, I got what I truly wanted and I'm loving and learning every single day.

garymoon 3 days ago 2 replies      
It was an accomplishment for me but then it became a frustration.I always hated mathematics but I always loved programming, making appls but cool things like algorithms design, data structures are the base of real cool things e.g. programming languages, RDBMS, artificial intelligence, etc. are all mathematicsSo I enrolled to Mathematics on my local university just to see how it was and I fell in love, I never saw so much perfection with just paper and pencil. I loved calculus it was really funny solving problems, making proofs, etc. I got good scores the first half of the year and I really wanted to continue but then frustration began, the need of money, so I started working and I couldn't go to lectures anymore. Of course I try to keep reading books and solving some excercies but help from professors or extra tips they used to gave us is what I really miss.
LouisSayers 3 days ago 1 reply      
I created a Neo4j (Graph Database) course on Udemy - https://www.udemy.com/neo4j-foundations/?couponCode=HACKERNE... (Please enjoy the hackernews discount!)

The course has an average rating of 4.62 and over 200 students. To date (since end of June), it has made $1182 for me.

This was quite a learning experience - aside from putting the course content together, I found out a lot about recording audio. I tried doing this in Thailand and quickly learnt that I was in a very noisy environment. First there were the echoes of the room itself which I fixed by cramming my microphone in the cupboard in-between blankets and pillows. Then there were the scooters, neighbours, air-conditioning, airplanes! This was a very frustrating experience.

If you ever make a course, make sure you have a nice, quiet recording environment!

I've also learnt that you can make a bit of money from having Udemy promote you, but if you want to make any decent money, you have to promote yourself.

I also believe from this experience that making one online course just isn't worth doing. If you're going to do it, you have to keep doing it. There is a learning curve at the start, and I believe the trick to being successful is to really work on promotion, and do up-sells to other relevant courses from your existing student base.

johnfn 3 days ago 3 replies      
My plugin for Visual Studio Code is nearing 1000 followers and 200k downloads: https://github.com/VSCodeVim/Vim (Last year it was nearly nonexistent.)

I learned a lot about managing an open source project, but probably the biggest thing was that I learned that even something as uncontentious as a Vim plugin can get a ton of hate online, including from Hacker News. I would hate to be working on a more contentious and visible project.

jacques_chester 3 days ago 5 replies      
I wrote this answer to a similar question a few months ago:

"I'm not dead" probably ranks highly. I am sometimes cast into a tournament against a patient, relentless salesman for death. The problem is, he knows everything about me. Everything. Every thought, every recollection, every secret shame, every regret. Everyone I've ever hurt, how I hurt them, how I let them down, how I failed them.

And he can, in a moment of pain, turn all of those into an impulse that I have to remind myself is just a feeling and even while I do that he's whispering "is it?".

Most of the time I am OK. But I know that I my emotions can just overwhelm me so suddenly and completely that it scares me. I am still learning how to live with me.

He'll probably make his sale in the end.

But I'm alive.

TheOneTrueKyle 3 days ago 4 replies      
Created a beer bread recipe blog in the hopes that I get big enough that breweries will send me beer. Last month, a brewery decided to send me beers to "play around with". Mission accomplished.
pasbesoin 3 days ago 1 reply      
Casual acquaintance became a friend and almost immediately turned to me for help with 20+ years of drug and alcohol addiction (they were an often-functioning addict, on whom it didn't physically show).

9+ months later, they are still sober.

Unfortunately, the friendship didn't survive. They really pushed my own boundaries, early on, but I hung in there, hoping and waiting per advice for their circumstances and perspective to settle down.

But, while they are no longer using substances, they are still, in my now more informed perspective, using people. Once they had other means of support, they didn't have time for me.

Still hope it all proves to be of benefit to their kids.

As for me, things I really needed to do, this year, nonetheless got placed on hold. This may even have contributed towards negative judgment towards me -- despite my circumstances making all the time I committed to them possible, in the first place.

Lesson learned: Take care of yourself, first. As also observed, ultimately, in the activity and choices of the person I was helping. They certainly took care of themselves -- sometimes at the expense of those around them who were willing to help.

dv35z 3 days ago 1 reply      
Finally learning, playing, and enjoying a sport - Squash! I have successfully gone from just about 0 activity (aside from walking everywhere - NYC), to playing squash 3+ times a week.

Growing up, I had never had interest (or natural ability) playing sports. Like many here, I'd prefer tooling around on computers, reading, etc. Likely, this became a self-fulfilling prophesy about "not being a sports person".

Well last year, after some thinking of - "if not now, when? When I'm 40?" I went to a gym, bit the bullet, signed up, bought 10 hours of private lessons for squash (first racquetball, but I switched immediately after trying squash once). It is probably some of the most fun I've had in years, maybe decades. Met so many great people, actually feeling fantastic shape for thr first time in my life.

I'm 34, and am actually a "sports person" now. Laughing even saying it in my head. I've used this achievement/habit also to become more of a morning person (by deliberately scheduling games with people at 7 or 8am), and also to do different activities at the gym (e.g. high intensity interval training group classes; running, and even some weight-lifting). It's even propelled me to think more about the food I'm putting into my body, cook more, etc.

If you have never heard of squash, check it out. It's intense (1000+ kcal per hour), easy to learn, low risk of injury compared to other sports, and is often cited as one of the healthiest sports out there. It's tons of fun (even if you're terrible), has a nice long and rewarding learning curve, is very strategic (the chess-like aspect of it appeals to my technical brain), and again - just tons of fun.

A trusted technology friend passed on the advice to try it to me, so I'm passing it on to you all! Try some squashing!

afarrell 3 days ago 2 replies      
I wrote a step-by-step tutorial on SaltStack. In the process, I worked through my psychological hang-ups with writing. For as long as I can remember, writing has always made me feel just this terrible anxiety. It made me want to dig my nails into my skin. Throughout high school and university, had come to view writing as this mysterious process. From literary essays to hypothetical military campaign net assessments to design documents to historical arguments, it seemed that I was never able to write anything (other than internet comments) without at least a minor emotional meltdown. As someone who deeply cares about developer experience and good documentation, As someone who believes in the power of well-written text to convey ideas that meaningfully change people's lives--I was ashamed and frustrated and hated myself.

But I had set out at the end of last year to write this tutorial. In starting a task that wasn't assigned to me by someone else, I could control and understand so much more about it: who the audience was, what its scope was, and what even was its point? I had enough of an understanding of the subject that I could grapple with and explain it. I was able to break it down and start to approach it as just...


It worked.

I got into the habit of approaching it like I approached writing code: just a matter of structuring ideas and reflecting on whether they were understandable to people. At the end, I had a working running product that someone could read and follow and learn from.

rsoto 3 days ago 0 replies      
After a rough first year when nobody wanted or saw potential on my product, my SaaS (http://boxfactura.com) is profitable, healthy and we have high hopes for 2017.

I learned the hard way to stop focusing on liking everybody, and making better business decisions, especially regarding partners. I have a marketing background, and I knew that saying that code is easy, marketing is hard, but I didn't know how hard. However, it has been a blast!

Also, this december we open sourced and launched a pull to refresh library[0], which has been a great success!

0: https://github.com/BoxFactura/pulltorefresh.js

chewxy 3 days ago 1 reply      
I bit the bullet and released Gorgonia (https://github.com/chewxy/gorgonia) to the wild. I braced for harsh critiques but it turns out releasing open source software is like running a startup: 90% of the time, nobody cares. Nobody uses it.
gravypod 3 days ago 1 reply      
Helped teach the entry level class for CS at my university (again) with majority of the students scoring in the top 10% of everyone taking the course. My students were only beat out by the honors sections of which the margines were slim.

I had a 26 student class. 9 studens got below a 90% on the final, I think 1 or 2 got below an 80.

I'm also going to stop being a TA this semester. I think I've been a big help to the students but I got offered a position to do real software development at the university. The pay is going to be crappy but it's ham-radio related so it'll be fun.

Teaching students let me actually teach myself better. I found that after breaking stuff down to explain it to my students I better understood it myself.

sagivo 3 days ago 1 reply      
I gave away $2M. I know it doesn't sound like an accomplishment but i worked at a place that I really didn't like. I decided to quit my job and not chasing after my unvested shares. Still not sure what to do next but at least I know that money doesn't worth my happiness.
matallo 3 days ago 1 reply      
I ran an ultramarathon (64 miles).

During this time of the year last year I was at a very stressful period at work changing to a new leadership role. I started working out more seriously, and signed up for a half-marathon, that I completed successfully (I had been running occasionally on my own, previously).

As the rewards of physical exercise were kind of immediate and didn't depend on external factors but myself it motivated me to put together a training schedule, and set the goal of finishing an ultra, inspired by some friends. I didn't communicate it to many people but just a few close friends. It was an endurance challenge, and I am very happy to have it accomplished.

Also, my performance review improved.

andersthue 3 days ago 1 reply      
Turning my consultancy (with 3 employees) from being on a slow ramp to bankruptcy to making a nice profit in the last months of the year.

I the process I embraced the fact that I am much better at sales than at programming, I even learned to love to do cold canvas calling!

danielhooper 3 days ago 1 reply      
I landed a great job as an iOS developer at a great startup in Toronto.

I accomplished this by building a unique iOS game that uses animated gifs for jigsaw puzzles. I wrote the app several times, and after giving it enough time, I was able to incorporate functional and generic programming concepts to reduce my code down to less than 1,000 lines.

I also ditched my resume because I didn't have substantial previous experience developing software (just 3 months) nor a degree of any sort. I just took videos of all my apps and put them up on a dead simple github pages site: https://danielhhooper.github.io

I interviewed and accepted an offer the following week.

taxidriver2017 3 days ago 3 replies      
Screenwriting. Finally tried my hand, persevered and finished a spec pilot. I thought it was passable. More crucially, that feeling of writing "Fade Out" at the close of my first draft was indescribably joyous. Triumphal. "I can do this" was my mantra. And with full confidence I submitted it to a review process by industry professionals. Believing they would instantly go gaga over it and I'd have an agent shopping it around Hollywood within days.

They massacred it. I don't think anyone got past page 9. The feeling was worse than being told "Sorry, but I just don't love you in that way," after putting all your heart and soul on the line.

But the remorse lasted only an instant. I put that piece of refuse in a drawer for later re-working. Then immediately finished another longer pilot. Incorporating a very obvious yet fundamental change in attitude from "they just will never understand my genius" to "how can I effectively tell this story in the most economical yet artful way so that anyone can relate to it?" The response this time around was much more positive. "Awesome." "Would watch this." The spark had started a flame.

And so in just over four weeks I committed myself without reservation and finished my first full length feature (100pg). The result: through a small cohort of fellow writers I met via stage32 I will now be collaborating on a paid gig for a webseries that starts shooting soon!

What I learned: respect for the process and the craft. Telling a story well (and especially visually) is so much harder than it appears. Heed the advice of your elders and those with experience. And write. Every. Single. Day. Without excuses ;)

I'd wager a sizeable portion of HN possess the desire or idea for a screenplay. We need more accurate portrayals of the hacker ethos in media. As well as sci-fi with some actual science in it. So I highly recommend facing your fear of the blank page because if nothing else, the effort will make you a better writer, and perhaps a better person.

To get inspired start by reading great scripts:


tpae 3 days ago 1 reply      
Quitting cigarettes. Exactly 1 year ago, I decided to quit. Best decision I've ever made.
msoloviev 3 days ago 1 reply      
I released a fairly major project (a research-oriented workbench for graph manipulation) in a state of comparitive usability: https://github.com/blackhole89/graphicdepictions

The main takeaway for me was that, unless you can tap into a preexisting pool of demand, grabbing people's attention is as hard and effort-consuming, if not more so, than actually solving a problem. One-on-one, I always had an easy time convincing people I knew that the program is useful for them, but simply throwing it out there and hoping someone would notice it was unexpectedly fruitless.

buf 3 days ago 2 replies      
I quit my job to spend more time with my family.

This was very difficult for me. I love working, but I'd been doing startups for a little more than a decade, and startups require lots of attention. When I had my first child 2 years ago, I thought I could do both. I was wrong.

My family and I moved to the wife's home country where it is very cheap and I'm spending 6 months just being "dad." In my downtime, I'm working on some residual income side projects (I've already got one going that brings in $2k a month).

It's an inflection point in my life. Truly unknown future. When I go back to the workforce, what lies ahead?

PS - I also lost 8kg. :)

funkyy 3 days ago 1 reply      
Closing all my loose tights, burning all bridges, finishing my toxic relationship, putting my startup into the grave, moving countries, finding my second half, traveling around Europe, settling down finally to start a new life and a new project in January.
sufyanadam 3 days ago 2 replies      
I made service that allows anyone with a domain to create their own private email server in less than 10 minutes: https://sealmail.net/

Using Postfix, Dovecot and PostgreSQL, you can read your mail securely via IMAPS on your phone and your desktop mail client. If your account gets hacked, you can just SSH into the server and reset your password yourself. No more getting locked out of your email account in an endless GMail password reset loop (https://productforums.google.com/forum/#!topic/gmail/HjW2Pj5...)

nhorob67 3 days ago 2 replies      
Launched a bootstrapped farm management software product in June (https://www.harvestprofit.com).

Recently eclipsed $100k in ARR as a solopreneur. Goal is $1 million in 2017 and to hire a full-time dev and a couple support staff.

My biggest lesson is that email marketing is the real deal.

elihu 3 days ago 1 reply      
I made an electronic musical instrument:


I've done a lot of regular programming and some basic electronics, but never a project that involved getting a microcontroller to talk to a bunch of ICs. So, I learned a lot about how electronic components don't necessarily behave the way I expect them to. I also learned a lot about what can be done by using MIDI in ways it wasn't meant to be used.

joshcanhelp 3 days ago 1 reply      
Sold a company.

I learned A LOT in the process, main one being that you should keep meticulous and separate records for anything that has the chance of being spun off. The company I sold grew out of my freelancing but was separate with a separate name. Unwiring the financials as well as the logins and everything else was a headache. It also looks better to your buyer if you can quickly produce accurate records on sales. I had to back-track and re-calculate several times, leading to more back-and-forth than was necessary.

Lerc 3 days ago 0 replies      
Honestly, Making it to the end. 2016 had been a rough year all round for people as well as for me personally.

Technically speaking I learned a few things, like Ray marching and distance field stuff, but nothing much I can point to and say "I did that."

I'm still here though, I made a few friends, I made and drunk some cider.

If I am on a good enough footing to make 2017 better, I'll take that.

agumonkey 3 days ago 0 replies      
- Finally cracking the partition function (with a tiny bitsy hint tbh) https://en.wikipedia.org/wiki/Partition_(number_theory)#Part...

- Understanding prolog/non determinism.

ps: I hope you all can enjoy prolog extreme beauty and concision one day if not the case already. It's not at all perfect but so tiny yet so grand.

doh 3 days ago 0 replies      
Many great stories here already.

Mine biggest accomplishment (probably of my life) was turning our almost bankrupted company into profit just in 4 short months [0].

I learned many great things, but the most important lesson is that if you treat your employees with respect and you don't hide things from them, they will stick around and help you to push through. Without them, I would have nothing today.

[0] https://medium.com/@synopsi/from-near-bankruptcy-to-profitab...

mrlyc 3 days ago 1 reply      
I learned that putting more pressure on myself wasn't working, that there isn't a linear relationship between pressure and results. Instead, there is what I call a sweet spot, beyond which more pressure decreases results instead of increasing them.
KittiHawk 3 days ago 1 reply      
I finally went on the round-the-world backpacking trip I've been dreaming about since I was a kid watching National Geographic. It was surreal, hard, beautiful, smelly, and everything I ever hoped it would be.

Growing up poor and growing into a lot of family responsibility made me think it was never going to happen for me, but I made it happen, and now I feel freer even in my day-to-day life.

jefflinwood 3 days ago 0 replies      
Finished a multiple-year quest to complete a marathon or longer distance in all 50 US states by finishing in Hawaii in January.

Oddly enough, what I learned is that the type of shape I was in to run/walk a marathon slowly on back-to-back weekends (or even back-to-back days) was actually not all that great.

I switched my exercise focus to building up muscle mass, and getting faster at shorter running distances, and started running with some free running groups in Austin. Much faster now, and in much better shape. I was able to drop 55 pounds (210->155) and keep it off.

soulchild37 3 days ago 1 reply      
Wrote a web scrapper backend and mobile app as frontend to scrap my university online portal to check if any lecturer announced class replacement / cancellation and send notification to the mobile app if there is any class replacement/cancellation. The original goal is because of laziness to check the online portal. I have learnt Ruby, Rails, Linux server setup, Nginx configuration and iOS (Objective-C) from scratch during the development.

The app spread in the campus with word of mouth and gained 2000 monthly active users in the first two months. University found out and sent me a cease and desist letter and then later implement recaptcha on their online portal login form.

Thanks to this app I managed to get a decent paying job as an iOS developer. Kinda wild ride

atarian 2 days ago 1 reply      
Creating a budget and sticking to it.

Although it sounds like a burden, it actually freed me from a lot of stress. I broke out of the paycheck-to-paycheck cycle, allowing me to invest and even set up emergency funds that helped pay off an auto accident I got into.

Most importantly though, I've gained a lot of self-confidence. If I got fired or laid off today, the last thing I'd have to worry about is paying my bills because I'm prepared to handle this scenario. So I've started making more bold decisions at work like saying "no" to overtime or responsibilities I don't want to take on, which has further improved my quality of life.

I can't recommend budgeting enough.

underyx 3 days ago 1 reply      
Pretty small fish compared to everyone else in the thread, but outside of work, I'm pretty happy I published my first actually useful open source project: https://github.com/underyx/structlog-pretty
rwieruch 3 days ago 1 reply      
To learn and teach React and Redux were my greatest accomplishments in 2016.

Very late in 2015 I started to learn React. I did a lot of JavaScript before, read a lot about React, but never used it before. Early in 2016 I wrote my first application in React and Redux - a SoundCloud Client (source: https://github.com/rwieruch/favesound-redux , live: http://www.favesound.de).

I wanted to share the joy of learning, the joy of applying the learnings, the joy of building an own application. That's why I started to write about it (http://www.robinwieruch.de/the-soundcloud-client-in-react-re...).

I didn't expect the enormous positive feedback. I continued to share my learnings. Eventually I found myself in the position to teach a bit about React and its ecosystem on my website.

Finally I wrote an eBook: The Road to learn React (http://www.robinwieruch.de/the-road-to-learn-react/). Again the feedback of the community was overwhelming. In the end I very much hope that it helps people to get started in React like I did. At this moment I improve the material whenever I can.

Besides of programming, I learned a lot about writing and teaching itself during the process. Still I try to improve my skills by reading books like "On Writing Well" by William Zinsser.

faitswulff 3 days ago 0 replies      
Built a (Rails) platform for discussing research with my cofounder: https://www.projectcredo.com

Example: https://www.projectcredo.com/wsf246/the-best-research-on-ant...

Source: https://github.com/projectcredo/projectcredo/

To be honest, it's the first notable project that I've shipped.

I learned that I have a lot to learn, even if I'm comfortable with the stack. It's interesting balancing the migration between what we know right now and where we want to be. For instance, jQuery -> Vue -> SPA (?) + API.

We're also learning Docker, testing (frontend and backend, and CI / deployment. We've got a long ways to go, but I think if we're patient, we can figure out a solid foundation.

kapv89 2 days ago 0 replies      
- Built and released an ORM https://github.com/fractaltech/tabel

- Became an expert at node.js, postgres, react, and react-native

- One of my open source libs hit 1500+ monthly downloads on npm

- Built a product http://flowapp.fractaltech.in/

- Managed to score 2 customers for the product

- Developed basic understanding of machine-learning

mkoryak 3 days ago 1 reply      
kelsyde 3 days ago 0 replies      
I climbed Kilimanjaro and got selected to JavaOne as speaker!

The climbing experience was richer than I thought:

- Full trust and obey my guide, Alex is a great guide.

- Planning and equipment are the key for success.

JavaOne experience:

- Presentation skills

- Great network of contacts

- Tons of knowledge

NicoJuicy 3 days ago 0 replies      
Had the 2nd largest Pokmon Go group in Belgium and did paid events with it in theme parks ( we were the first ones that did it)

Launched my first webshop ( which is actually quite fun) in a niche ( 500 / month profits), which is nice.

Otherwhise, work overload made me quite agitated on the end of the year. But i'll get through it.

Hamatti 11 hours ago 0 replies      
I started a local meetup with a few friends and ended up finishing the first year with 9 meetups, a hackathon and 250-ish people in the community - and the first 3 months of next year already booked with hosting companies. I had never done anything similar so it was a huge thing for me.

I learned a lot about developer communities and what makes 'em tick.

gcatalfamo 3 days ago 2 replies      
Getting married and getting my PhD in the span of 30 days!
jboggan 3 days ago 1 reply      
Started my "dream job" at Google in January and fought through a very steep learning curve towards being a fullstack engineer there. I learned our team's frontend in AngularJS (despite no frontend experience nor any idea how different JS is written inside of Google), webserver in Java, backend in C++ and data pipeline in Go (with tangential previous experience in JS & Java and none in the other two). Add on that the myriad configuration languages and SQL-ish dialects and tools and it has been a pretty heavy year all around, I'm glad I'm still standing.
marcofloriano 3 days ago 0 replies      
Running a small online business with profit at Brazil in the middle of our worst economic crisis ever
nickthemagicman 3 days ago 2 replies      
Finally followed my dreams of leaving my home state. So I quit my corporate job that I hated, left Louisiana and moved to California taking a epic road trip across country in the process, then arrived and got more or less the job of my dreams a couple months later. Been a pretty interesting ride so far out here.
egonschiele 3 days ago 2 replies      
I published a book, and I've read 171 books so far this year. I think all the reading has made me more confident in daily life. A nice side effect of the confidence is I'm more okay with making mistakes.
euyyn 3 days ago 0 replies      
Professionally speaking, the 1.0 release of gRPC for ObjC. I think I learnt to be less conservative to offer public API surface. The porcelain / plumbing approach of Git looks like a good architecture to try.

Personally, I became a homeowner. Some learning! But I don't want to spoil the fun for anybody.

csbartus 3 days ago 1 reply      
One of my websites was featured in brutalistwebsites.com Quite a big surprise since I'm a self taught designer.

What I've learnt is to avoid the hype and trust your gut. Don't go with the flow, the 99%, you'll get nowhere.

The content of that website is something very meta and I'm writing it since 2006. I thought only robots will read it. This makes me think secondary values are more important than the day job you do and think is the most important.

escapecharacter 3 days ago 0 replies      
Realizing that I couldn't have a day job + a real passionate side project. Quit that day job, realized while contracting that I was probably undercharging for compensation, and currently bootstrapping that side project into a startup. Wish me luck, etc.
jonnycoder 3 days ago 0 replies      
I went from an 11 to 6 handicap in golf, which took a lot of practice, patience, research and self improvement. Golf is one of those games that you cannot easily double your improvement without the strong will to improve. It also requires focus and improvement is several areas at once to post good score. Having a good fundamental full swing is necessary for hitting tee and approach shots in regulation (36 total shots), but putting makes up 50% of for remaining shots in regulation (2 putts per hole = 36 total). Putting improvement is the easiest for high handicap players who 3 and 4 putt a lot, but obviously shows diminishing returns for better players. Therefore short game was critical for improving given I don't hit all greens in regulation and must make "up and down" with a 1-putt to make a lot more pars. For 2017, I look to better track my strokes gained statistics which will tell me specific areas to practice on. The HN crowd may find strokes gained stats interesting.http://www.pgatour.com/stats/academicdata/shotlink.html
pyromine 3 days ago 0 replies      
I regained my intellectual curiosity.

Since then I've taken up personal projects again (like a set of interactive economic model solvers for students), and really gotten to love the process of learning again.

I've also finally truly figured out what field I want to get in to, while it won't be easy to break in to quantitative in finance it at least gives me a direction to take my studies and an end goal of where I'm aiming to be soon.

garysieling 3 days ago 0 replies      
I've tinkered with side projects for a long time, but I finally finished one to the point where people can use it.

This is a search engine for lectures; one of the great things is this is something my family can understand and use.


I've been really happy with the response so far (The Next Web & Lifehacker wrote nice articles about this)

ccvannorman 3 days ago 0 replies      
I turned mathbreakers.com (a download game) into supermathworld.com (an online game), with the added bonus of making our internal game building tools a part of the software.

I learned that it's difficult to sail across the pacific in a rowboat. Meaning, even though your startup aspirations may be wild, it's important to have the right timing and right team to move forwards -- going with blind energy leads to waste and burnout.

elkos 3 days ago 0 replies      
Being part of a team that built the 1st open hardware satellite that also happens to be the 1st satellite made in Greece (https://upsat.gr)

I learned that through hard and passionate work we managed to create something that seemed impossible to do in a country like Greece. Seems like it's not.

Now with a March 16th launch date we will be launching on ISS.

ge96 2 days ago 0 replies      
I don't know about greatest accomplishment.

I'm still alive and I think this year I would have made $1,000.00 at most as a freelance web developer. I should add I was working full time as a factory worker for a bit(for the most part till I became unemployed again).

I was working at a factory. Maybe if I'm lucky I get hired at a tech position.

Donmario 3 days ago 0 replies      
A big one for me was to finally put a product out that I've created http://www.curie.me/.

I never was able to finish anything. With Curie it's also an important one for me, and probably because of that I was so determinated do finish it. One of the biggest reasons was that I knew that the product could help other prevent having the same back problems as I had.

I worked on Curie with 3 other co-founders for nearly 1,5 years now after hours, but we never had the energy or time to get it done. Because I was feeling that my teammates didn't put so much effort in it I finally decided after a couple of month trying to motivate them to let them go. As you can imagine it was really hard to do that, and I felt in a kind of depression about that I knew I needed to be make Curie happen.

Now it's in open beta and soon we'll be launching a chrome extension.

zazpowered 3 days ago 1 reply      
I launched a site which I think I will work on for at least a few years: https://senzu.io/
techbubble 3 days ago 0 replies      
Launched the public beta for WhenHub https://www.whenhub.com and mobile app. It's a SAAS app that lets you tell stories with time. You create a rich-media schedule of events and then embed it as a visualization on web or FB where it can be viewed, then optionally time-shifted and added to calendar. The mobile app uses geostreaming to answer the question "when will each person arrive" for any scenario where multiple people are meeting up.

It has been an interesting journey grappling with creating a responsive, embeddable, interactive JS player on front-end while dealing with the idiosyncracies of iCal and Google calendar synch on the backend.

I learned how to work well with a distributed remote team and get a product released.

dpeck 1 day ago 0 replies      
Launched a product that is on the shelf in stores across the US.

Things I learned:

Be extremely careful with your demo apps, people will see the demo work and think its most of the way there and just needs polish where reality is very different.

Grasping new technology stacks is harder for many people than I anticipated. I chose Erlang/Elixir/BEAM and I wouldn't change that, but onboarding has been a challenge. What I see as mostly syntax and just learning what philosophies work best on a new VM others see as a sea change that takes much longer than anticipated to understand.

zeveb 3 days ago 0 replies      
I honestly don't know, which means I need to journal more.

I started to keep a paper journal this year. Maybe that is my greatest accomplishment?

jventura 2 days ago 0 replies      
After quitting a job with a lot of commute time in it, and having failed to monetize a side project, I finally landed a teaching position on a local technical university.

I always loved learning and teaching, and a side effect of this is that now I've regained the curiosity I always had about the fundamentals of our industry (I've a CS PhD). So now I'm back reading about the fundamentals of electricity and building 8-bit digital adders with basic AND/OR/XOR logic gates [0].

There's still lots of fundamental things that I want to re-learn, and for 2017 I'm thinking on writing a book about learning programming from exercises (with just enough theoretical concepts) starting from flow-charts and pseudocode, up-to some basic algorithms / abstract data structures/types (probably using Python). My idea is that there are lots of students out there that could benefit of learning how to program by solving focused exercises and learn enough about algorithms and structures to feel capable of doing more complex things (i.e, not feel the "impostor" syndrome).

[0] - https://www.amazon.com/Code-Language-Computer-Hardware-Softw...

contingencies 3 days ago 1 reply      
Started a company from concept stage on a minimal budget, achieved functional UX walkthrough, team build-out, office space acquisition and fit-out, lots of research, multiple hardware iterations, multiple hardware prototype iterations, acquired multiple interested investors willing to commit funds exceeding total capital investment to date.

Learned mostly in the areas of mechanical engineering, robotics, manufacturing, materials science, product design, Solidworks. Refreshed electronics knowledge.

Oh yeah, and quit smoking a couple of times ;)

mcjiggerlog 3 days ago 1 reply      
I built my first major side project / application - https://www.artpip.com/. It's a free app for setting fine art as your desktop background.

It was a real culmination of what I've leart over the last few years and it was satisfying to actually produce and ship a finished product. I also leart A LOT about the world of art during the process which has been amazing. The feedback I've had from users has made it all worth it.

boyter 3 days ago 0 replies      
I realised searchcode server https://searchcode.com/product/ and started to make some sales.

What did I learn? You would not believe what people commit to their source control. Gigabyte text files, millions of files in a single directory, files with the immutable bit set etc... Some of the most bizarre things I would have never encountered.

My defensive programming skills when file processing have improved greatly as a result.

qwertyuiop924 3 days ago 0 replies      
I wrote some code that solved a problem I had.

Sure, it was small, and far from the biggest thing I've written, but it was really and legitimately useful, and actually helped me with a real problem that I had. Most of my code is just oddball projects and weird experiments. It felt good to make something and see the effect right away.

It taught me that in the future I'd need to make my projects more immidiately applicable to Real Life. It makes them more interesting, even if the actual code is fairly banal.

baccheion 2 days ago 1 reply      

2016 was another miserable year filled with 24/7 intrusive/harassing/distressing thoughts and physical pain/discomfort that left me unable to do anything but sit around being harassed.

I'll be 31 soon, and thus far have spent the last 6+ years sitting around in this state unable to do anything, work, think, etc.

Others say it's some sort of mental illness, but I say I'm a Targeted Individual (ie, someone did/is-doing this to me).

gargarplex 3 days ago 2 replies      
I finally wrote a book. This book is about how to break into consulting, and it's addressed specifically to programmers. I feel like people were always asking me about how to break into consulting so I just sat down and knocked out a book over the course of four to six weeks. Details and an exclusive discount for the HN community is available in my profile.

Also, I learned conversational Swedish and traveled to Stockholm twice. Fun times!

ivm 3 days ago 0 replies      
Launched my time tracker, Qbserve[0] and learned that even a huge boost from being in HN top posts doesn't help to reach press or bloggers "automatically".

Gaining visibility even in a relatively small market like Mac apps is a huge effort and nobody cares about you and your product on its own.

[0]: https://qotoqot.com/qbserve/

joeclark77 3 days ago 0 replies      
Published my first e-book -- https://leanpub.com/data-engineers-manual -- and made my first sales. 37 paying customers so far, and I just got my first "review" (an encouraging tweet) the other day. Not bad for doing zero marketing and promotion. It has encouraged me to do more of the same.
lukaszkups 3 days ago 0 replies      
1. During 2nd half of the year I've finally started to work with two open source projects from scratch (I've planned one, but 2nd has come to my mind couple weeks ago).

2. Yesterday I've finally managed to restart my blog.

3. I've learnt my little kid couple nice stuff.

4. Despite the fact I was overworked in December and started to work on side projects mentioned above, I've managed to spend more time with my family.

Looking forward what next year will look like :)

Ftuuky 2 days ago 0 replies      
2016 was awful, just awful. My parent's home burned down (luckily they had good insurance), my startup failed (no VC investment in sight, no bank would give us a loan, my co-founders went separate ways, etc) and now with 27 years I had to find a "real job" (was in academia before the startup) in another city where I have to pay a huge rent for a shitty apartment. Then, two days ago, the consulting firm where I working just gave me notice that they can't pay salaries to everyone in January so the last two guys getting in have to go. Nice xmas gift...

Now I don't know what to do, it's so hard to find a job in this country. I'm taking MOOCs about data science and python because there are so many job listings for such positions but who will hire a forensic anthropologist? I was lucky enough to get into this job and now there's nothing for me in the horizon.

andrei_says_ 2 days ago 1 reply      
Learning Tango. Or should I say, starting to learn it -- it takes a couple of years of sucking at it to become bearable for a leader.

It is an incredibly deep and rich discipline which invites me to multi-dimensional mastery: kinesthetic, emotional, sexuality/boundaries, musicality, finding place in a complex multilayered society and communities, relationship to learning/failure/frustration, intimacy, discipline... and more. It is incredibly beautiful and complex, difficult and rewarding.

Mastery with infinite possibilities and thus no ceiling. No graduation :)

I'm fortunate to have found a school that approaches it in a profoundly deep and felt way, and has redefined teaching in the process.

I feel extremely grateful. It's changed my attitude toward leadership, relationships, music and community. What a gift.

bostik 2 days ago 0 replies      
Started the year by "flipping the final switch" on our months-long migration from colo-hosted system to EC2. The final operation was to promote our secondary in EC2 to primary, and point all read-write systems there before restarting the entire stack. (It was bit of an anti-climax.)

Then proceeded to work on and push through any pending changes that allowed us to pass three separate audits.

Towards end of the year, finally hosted the first meetup at our office.

As to what I learned:

1) Implicit couplings are incredibly easy to introduce, even with designs that were explicitly set to avoid them.

2) Auditors mean well but rarely have a wider technical background. In gambling industry they are also terrified of running production systems in the cloud. Architectural decisions must be paired with what amounts to a PR effort aimed at third parties.

3) Organising even a casual event is a lot of invisible work.

forgottenacc57 3 days ago 1 reply      
Survived another year of struggle to stay on top of ordinary life.
xj9 3 days ago 0 replies      
i decided to face the fact that i'm trans, which threw a huge wrench in my startup plans, but it turned out to be for the best. i'm learning a lot about self-care that i'm hoping will help me be a more effective entrepreneur in the long run (i.e. less prone to burnout). my quality of life has skyrocketed.
cryptozeus 3 days ago 0 replies      
Ran sf half marathon after having bad knee pain for kast 2 years. I clocked in at 2hr 40 min...very proud moment.
echelon 3 days ago 1 reply      
I wrote a concatenative Donald Trump text to speech engine [1]. It kind of sounds like garbage right now since I rushed to complete it before the election--I had no idea he'd win. I read lots of literature on speech and linguistics, synthesis algorithms, and more. I also had to curate a large sample of Trump speech.

I wrote the backend in Rust, so I was able to learn quite a bit more about Rust in the process.

Since Trump won the election, I'll devote some time in Q1 2017 to improving the voice quality. I'm especially interested in applying deep learning techniques to generating a larger n-phone data set.

My second largest accomplishment will be what I'm going to pull off for New Year's, but that's a surprise. It involves multiple watts of lasers, though. :)

[1] http://jungle.horse

eli_gottlieb 2 days ago 0 replies      
I ran experiments and wrote a paper aimed at providing an information-theoretic explanation for why deep learning and hierarchical Bayes modelling work. It's under review right now.

I put two PhD applications in to top departments.

I got married.

In the process I mostly learned the same lesson from my MSc: research is mostly a lot of background knowledge to acquire and legwork to do, but if you've done it right, you can address a big, difficult question by wearing it down until it's small enough to work with.

FLGMwt 3 days ago 0 replies      
I finally got the company engineering blog off the ground! (http://engineering.rallyhealth.com)

It's nothing special and there's not a lot of content, but I hope to learn a lot and make more connections as the editor.

I definitely learned to share my accountability with other people. I had enough to launch in Feb of this year but I didn't launch until December when there started to be external pressure.

Additionally, I learned that for things outside of typical teamwork, it's necessary to put hard deadlines on things. When someone signs up to write a blog post I can't expect them to work on it in preference to sprint work unless there's a deadline or incentive.

timfinnegan 2 days ago 0 replies      
I've been using Blogger to annotate James Joyce's Ulysses, with an emphasis on linking all the many freely-available online resources. But there's so many that pagesize becomes problematic-- not load time, just requiring readers to scroll through many screens of information that may or may not interest them. So my new plan is to classify and summarize individual notes, and only gradually reveal them by request: http://ulyssespages.blogspot.com/2016/12/button-test.html
kevan 3 days ago 0 replies      
I achieved one of my long-term career goals, getting a job at a Big 4 tech company. In the process I learned that a growth mindset is one of the most powerful assets you can have. I also handed off my pet open source project after taking it from 30k to 7 million downloads.
atsaloli 3 days ago 0 replies      
I've partnered with GitLab and developed courses on Git and on GitLab CI. In successfully developing the CI course on short notice, I've learned I'm usually operating way below my potential. I need to push myself more. Don't get comfortable.
robbiep 3 days ago 0 replies      
I rediscovered happiness, the art of living in the moment, closed a round on my side project so I can go full time next year, spent 3 months collectively travelling the world, and realised that things are actually pretty bloody good and I should stop worrying about anything
IWillScoop 3 days ago 0 replies      
All these accomplishments and I'm just happy I got 40 followers on Twitch over the year.
ireadfaces 2 days ago 0 replies      
I was a mobile developer and always wanted to step up my game. So I left my that job and joined a start-up with just an idea.Now I am CTO of a data capability company,And in process I learned two new languages, frameworks, exposed myself to new technologies such as mongo, data scrapping, API writing, handling whole product development. Last few months were great from work perspective, though not from money perspective.Now we are on to raise some money, and hopefully i will be alloted a good amount of equity.That's it for this year.
ruairidhwm 2 days ago 0 replies      
I took risks:

I licenced software I made to my current employer and turned that into a mini-SaaS business.

I negotiated my own job role in a specialised area but turned it down in favour of moving countries with my girlfriend.

I gave a TEDx talk on legal technology.

2016 has been a rough year globally but a pretty good one personally. Whilst it has had its challenges, overall I've learned to take more risks and to say no to more people.

Next year, I want to create more SaaS businesses - though right now I've got a bit of creative block around it.

haidrali 2 days ago 0 replies      
Started a part time product http://www.barber.pk (Online barber booking service) and its going very well, though not yet able to generate money but have positive feedback and able to won FBStart services grant, this is best thing happen to me in 2016 along side some bad ;(looking forward to 2017 now with lots of positivity
mhuangw 2 days ago 0 replies      
Was offered a position as a technology summer analyst at Goldman Sachs next year. Maybe not too impressive for some people here, but it was my first big offer and I felt proud of it.
hn_lurker45 3 days ago 0 replies      
Cleared technical interviews and joined Microsoft as a Software Engineer working on Azure. Having been around 3.5 yrs in the field, it lifted my self esteem and made me realize I'm not so bad.
tdaltonc 3 days ago 0 replies      
I finished my PhD in neuroEconomics. I learned that I don't want to spend the rest of my life writing (most rejected) grant applications, so I left academia and founded a startup.
costcopizza 3 days ago 0 replies      
Recognizing the exorbitant amount of self-doubt and limiting beliefs going on in the background of my brain.

Now changing them is a whole 'nother story and I still am looking for answers on that.

waspleg 3 days ago 0 replies      
It's not over yet. I want to say surviving but given the spate of celebrity and personal friend deaths and my own health problems there's not enough wood on Earth to knock.
aakriti1215 2 days ago 0 replies      
I graduated college and learnt how to code for my job! I've loved it so far, and am always fascinated by the tech community, YC and all of the resources out there that help me learn more everyday! I think my biggest learning was that even veteran coders forget commas and semicolons sometimes, so I shouldn't be so hard on myself.
zeta_ 3 days ago 0 replies      
Not so great like the others, but I think I'm finally overcoming my procrastination problems.

I've being constantly working on my personal projects and reading lots o technical books.

ioda 3 days ago 0 replies      
We landed on our first paying customer on a product that we had been working for more than a year and half. And many more sign ups later turned profitable too. And about to release a major upgrade in the first weeks of 2017.

The down side was that I hardly had any holidays in 2016 and was consistently clocking 12 hour work days. So exhausted to the core as well.

For the curious, we are working on http://www.reportdash.com

lightbendover 2 days ago 0 replies      
I was the lead engineer on a new financial exchange that we launched just this month. Honestly, it involved some of the lowest lows of my career to date and while it is assuredly my greatest accomplishment of the year, it in no way felt triumphant -- just flat and empty, which I'm sure is either a symptom of burnout or a sign to move on with a decent notch on the resume. I am so very tired of 2016.
hoju 2 days ago 0 replies      
Campaigning for Brexit - learnt that no one is objective, everyone interprets information through their preconceptions.

Also finished my Masters and got a remote job at an awesome startup. Learnt to be less afraid of failure - better to apply to as many universities/jobs as practical and then accept the best offer. Wish I realized this a few years back.

kovacs 3 days ago 0 replies      
I was in my very first performing arts role, a musical parody of bay area tech, and lauched a webapp during the show (http://birthdaymob.com/) and integrated audience participation to introduce people to it.

It's the very first app to ever launch as part of a musical and yes I realize how ridiculously "Silicon Valley" this is :-)

bharani_m 2 days ago 0 replies      
Started learning (amateur) boxing.

I participated in my first boxing tournament last month and won the bronze medal. I think this was my greatest achievement of 2016.

It wasn't such a big tournament as it only had 15-16 boxers in my weight category and I only had 3 fights.

I was really scared before getting into the ring for the first time, but completing three rounds of my first match was a rewarding experience.

gsylvie 3 days ago 0 replies      
I wrote a Bitbucket add-on that puts a rebase button and a squash button on the pull-request screen. At this time it only works for the on-premises version of Bitbucket, aka Stash aka "Bitbucket Server".

Here's a screenshot of the Squash button in action: http://bit-booster.com/bb/squash.png

Bdiem 2 days ago 0 replies      
Made an agreement with my employer to work less and I really enjoy my new found spare time / day.
jurgenwerk 3 days ago 0 replies      
Sold an app, wrote an e-book, 15 poems, a blogpost featured on HackerNews frontpage and took a 40 year old lady on a dinner date.
CiPHPerCoder 3 days ago 0 replies      
Everything I've done this year pales in comparison to what I did last year: https://paragonie.com/blog/2015/12/year-2015-in-review

I'm looking to improve the security of potentially ~82% of websites in early 2017.

morsmodr 3 days ago 1 reply      
Worked on a 3 month rapid product development with a team of 4 using Scrum methodology. Technologies used: React-Redux-TypeScript

Learning: Was in product development first time. Scrum is tiring in nature but good when used for rapid development. React-Redux-TypeScript is a great combo. Still not sure on using inline styles for react components

niftylettuce 3 days ago 0 replies      
Getting CrocodileJS going, I learned ES6/ES7/Babel/Async/Await and so much about React and React Native too (building some RN apps at the moment). I still need to ship V1, but I am looking for help. https://crocodilejs.com
alexbilbie 2 days ago 1 reply      
Christmas Day 2015 I decided to go freelance, 4th January I handed in my notice, 25th March I set up my own company.

Haven't looked back since; I'm happier, less stressed, earning more and I've had more holidays this past year than I ever have done in a single year.

billforsternz 3 days ago 0 replies      
I finally got my general purpose chess program (Tarrasch Chess GUI, see http://triplehappy.com ) to a point where I am happy with it. After about seven years off and on.

I think what I learned was, don't spend seven years on the next project :- )

iliicit 3 days ago 0 replies      
Built Bitcoin trading algo that pays me as well as my day job. Learned machine learning in the process.
d1ffuz0r 3 days ago 0 replies      
* learned how to play piano

* sold side project

* started another side project and with more users than all previous projects together

NetOpWibby 3 days ago 0 replies      
I've actually written about this earlier today! https://thewebb.blog/thoughts/2016/what-ive-achieved-this-ye...
mcs_ 3 days ago 0 replies      
Survive 12 more months, paying 2 schools, house, bills, helping mom... all with javascript.
fabianfabian 3 days ago 0 replies      
Surviving javascript fatigue
sebringj 3 days ago 0 replies      
accomplishment: building my own social app from scratch and putting on app storelearned: you literally have to treat your goals as gods and worship your ideas daily. i made enough branded t-shirts and wore them everyday so my friends would see me wearing the same logo everyday and then ask me "is your app done yet?" and I would be embarrassed if it wasn't done yet and work on it after work. but now I got a ton of feedback and know what i need to do to make it great, so working on the 2.0 version.
buf 3 days ago 0 replies      
I stopped drinking coffee after 14 years of drinking it every day.
sbov 3 days ago 0 replies      
Finally launching the software I/we were building for one of our businesses for the last 1.5 years... only to have said business shut down a few weeks later for unrelated reasons.
nojvek 2 days ago 0 replies      
I built my rasberry pi robot. Never did any hardware work before. Had a ton of fun. Also did a three.js earth visualization.

Want to now build a VR robot for telepresence.

cdvonstinkpot 1 day ago 0 replies      
Quit smoking- something like 6 months by now...
marksteve 3 days ago 0 replies      
Got my weight down to its lowest since my adulthood.

Climbing helped a lot with this. In the process of getting more fit, I realized more what I want in life.

Rebelgecko 3 days ago 0 replies      
Some code I wrote went to space and ran without breaking anything. That might be cheating though, since most of it was written in 2015
jps359 3 days ago 0 replies      
working the same job for the entirety of the year
austincheney 3 days ago 0 replies      
Extending my JavaScript parser and beautifier (written in JavaScript) to also support TypeScript, C#, and Java.
SN76477 3 days ago 0 replies      
A lot of failures! Its been a ride!
jrs235 3 days ago 1 reply      
I didn't quit my job.
SnowingXIV 3 days ago 0 replies      
Getting married. Definitely.
pramit 3 days ago 0 replies      
Created an online book cms, launched a series of career and self improvement guides, a food calorie burn calculator with a twist, a multipurpose heath stats calculator, and am currently finishing a small ecommerce platform as well as a small community for sharing polls etc.
Ask HN: Should I learn Bootstrap 3 or 4 at this moment?
105 points by utt  4 days ago   108 comments top 43
pedalpete 4 days ago 8 replies      
Learning Bootstrap 3 or 4 should take you very little time, I would suggest you don't learn either of them, but instead take the time to learn CSS (I am of course assuming you are not already a CSS wiz).

You can look at the source of Bootstrap to see how they accomplished certain things if you'd like, but if you're doing anything more than prototyping (and even then), I feel there is very little benefit to using Bootstrap these days.

Once I was told to ignore Bootstrap and just create my css myself (using Sass or CSS Modules) I find I'm making the same recommendations to others. It doesn't take long and you'll have a much better idea of what is happening on your page.

Your html and css should end up being much smaller as well.

nkkollaw 3 days ago 1 reply      
I'll actually answer your question.

I've been using Bootstrap 4, since it's already stable and will come out in a few months anyway, so I won't have to upgrade anytime soon.

If you use libraries that depend on Bootstrap, you might want to check compatibility. I was using Bootswatch and the developer didn't upgrade the code to Bootstrap 4 until a few weeks ago. Other than that, I see no reason not to use the latest version.

I'm surprised by all the comments saying that you don't have to learn Bootstrap but you can just look up the components every time you need to use them, suggesting you use Skeleton, or that if you use Bootstrap you don't want to learn/know CSS. Nonsense.

ggregoire 4 days ago 2 replies      
Do people really "learn" Bootstrap?

I've been using the version 1, 2 and 3 and I've never felt like I needed to learn it. Usually I just open the doc when I need to use something.

redlofa 3 days ago 0 replies      
Everyone opting for "do your own CSS" and not using a framework, is absolutely a horrible idea. You will not be the only one writing CSS for long term for your app I assume, any new member will find it extremely difficult where to modify following some good standards. They might miss a lot of things or overdo things perhaps.

Regarding learning BS3 or BS4, I'd opt for BS4. All you have to know what things BS4 provide and use them appropriately. Not to mention, some fairly good CSS knowledge is also a pre-requisite. One of the themes we recently used is startUI (google for it). It's on BS4 and the components were easy to integrate in apps.

Brajeshwar 3 days ago 1 reply      
On a serious note, I believe the befitting proverbial advice is, "Give a Man a Fish, and You Feed Him for a Day. Teach a Man To Fish, and You Feed Him for a Lifetime."

You said "learning", so I'd still suggest learning the actual CSS. Of course, when you become a bit comfortable with it, you'd have already learned Bootstrap.

Here is how I'd for;

- Use Bootstrap 4 or even 3 to learn your CSS. Use it, go through the source codes and learn from there.- Keep doing CSS (feel free to try other frameworks too) and you should be on your way.

The analogy I can find is that quite a lot of people "learned" jQuery. Then, they figured out that it is, well, JavaScript. They got intrigued, went backward and learned JavaScript. Many enterprising developers advance and 'learn' other frameworks too.

I used to be in the camp where my take was, "learn the actual raw CSS and JavaScript - that's the way to learn." But my experience dealing with juniors, and new developers is that not everyone can just learn something. In fact, a lot of people do not know how to learn things the right way. They need to first learn to learn new things.

So, take it easy on yourself, start with something you can start off (and produce something you're proud of) and begin learning real CSS in the process.

Well, my team specialize mostly in fixing projects shoved down by developers using Bootstrap, where the enterprises needed to go to market quickly. Once they reach critical bloat-stage, we go in to clean-up, make the sites 10-30 times faster by removing all of Bootstrap and other frameworks and staying really lean (use a minimal framework or a very low footprint one.) We, sometimes, end up developing the "Bootstraps" for these companies.

mightybyte 4 days ago 1 reply      
It depends on what you want to optimize for. If you're starting a startup and you anticipate having a dedicated design team, I think you're better off making your markup match your domain and hand-rolling the CSS instead of using a framework like Bootstrap. This is the ideal approach IMO because it lets you much more effectively keep the styling out of the markup and in the stylesheets. CSS frameworks by definition require you to put styling in your markup.

But if you're just trying to bang out a small project quickly and have it look nice without needing to muck with CSS too much, then a framework can be very useful. These days I prefer Semantic UI over Bootstrap:


ams6110 4 days ago 3 replies      
It doesn't matter. Because no matter what tech you use in the web app space, it will all be obsolete in a year or two. Your apps will never be done, because the sand will shift underneath them. You'll need to continually update them to keep them working, or abandon them.
wattt 3 days ago 0 replies      
The answer you want is to use Bootstrap 3. The reason is that you are new and tutorials will be written for that version. Although generally speaking I would start with 4, you also don't want to burn out on stupid unfinished/incomplete work. Don't burn out when you are just starting!
pryelluw 4 days ago 0 replies      
What browsers do you need to support? Version #4 dropped support for IE9. If IE is important for your business then version #3 is currently the better option.

Now, learning bootstrap is not too bad. All you need to donis figure out how it defines the layout grid, how it handles margins, padding, and gutters, and how to use different classes to make the site responsive. Should take a couple of days. Ping me if you need help. :)

doomsdaychicken 4 days ago 1 reply      
Go ahead and start using Bootstrap 4, I've been using it in production and it's quite useful.
isaac_is_goat 4 days ago 0 replies      
I've used BS2 and 3 in the past, and wouldn't recommend bootstrap at all these days. You're better off with something like Bourbon which is much more modular and lightweight and doesn't force you into a certain "way" and eventually down the "override everything" rabbithole.
vayarajesh 4 days ago 0 replies      
I started using bootstrap from Bootstrap 1 and it was not difficult to start using 2 or 3 - the basic conceptual framework remains almost the same and most of the implementation anyway requires the Bootstrap documentation open on the side for reference.

However, I would recommend to move away from Bootstrap to Material design for example, I feel (after using both) Material design is more well though framework and it also has bindings with Angular (that is if you are building angular apps) through [angular-material](https://material.angularjs.org/latest/). There is also standalone framework [getmdl.io](https://getmdl.io/started)

Then there is a very detail documentation on how to think like [Material design](https://material.google.com/) way by Google . Checkout the components section from the menu, it is really nice they way explain the theory behind why each component the way it is

FrancoDiaz 3 days ago 0 replies      
I do a lot of front-end development these days, but I still feel that my CSS skills are weak. CSS is (for whatever reason) hard for me. Does anybody have any CSS learning resources that have exercises? There's plenty of books out there, but I really need a guided, hands-on learning experience.
mundiff 4 days ago 0 replies      
I'd start with 3 then migrate to 4. Also, learn Flexbox as it will be enabled by default in BS4. FlexboxFroggy.com is a nice introduction. There's one more breakpoint in BS4. The css class to make images responsive has changed for the third time in 3 releases. Other than that, basically the same. I've been toying with it.
vampaz 3 days ago 0 replies      
You don't learn Bootstrap. You learn CSS and HTML and you just use Bootstrap.
agentgt 3 days ago 0 replies      
I can't help but ask a bigger picture question: "What are you trying to do or what is your end goal"?

If you are trying to roll out some new software for a startup or project and you want it to look good and semi unique then I recommend just buying a theme with all the necessary components (dashboard, graphs, whatever) you need. Themes are pretty cheap these days. Usually one of these themes has picked some sort of "foundation" library and you can then learn that.

Basically force yourself to pick by necessity and not what the "future" should be...

rajangdavis 3 days ago 0 replies      
If you have time, force yourself to do a small project with both. Whichever feels more natural to you is probably the route you should take.

Personally, I would be hesitant to go with v4 because of losing support for older IE browsers HOWEVER v4 is built on flexbox, so it should in theory be a little bit more of a sane implementation.

I would do some more research on what are the differences, it seems like with v4, they are making the API a little bit more simpler, but I haven't dived into it yet.

KayL 3 days ago 1 reply      
To answer this question, I'm more interested in how do you learn it first.

All these frameworks are just COPY & PASTE the pre-made code. For example, you wanna button in that style:http://v4-alpha.getbootstrap.com/components/buttons/

Copy that code and paste into your HTML. Whatever v3 or v4 are the same way.

If your learning way is memorizing the code without checking the document each time, then I'd say v3.

kin 3 days ago 0 replies      
I think it would be valuable to you to give HN a little more insight to your particular set of skills and your purpose.

I say this because I personally have dived head first into using a CSS framework without first fully understanding a few key CSS fundamentals. This made front-end work very hacky and involved a lot of trial and error.

Further along the line I've also been burned once or twice by adopting a CSS framework, only to have breaking changes from future updates.

So really it depends on your situation, whatever it may be.

citrusx 3 days ago 0 replies      
Another vote for "Consider alternatives".

I happen to like Semantic UI a lot, but you can also consider something smaller and less proscriptive than Bootstrap, like Skeleton or UIkit.

jmcmahon443 4 days ago 0 replies      
I've been using 4 for production. Pretty much the same thing.
untilHellbanned 4 days ago 0 replies      
We had the same thought over a year ago. We choose Bootstrap 4 but it was a big headache because the Javascript plugins were and still are quite busted. I would choose BS3.
dumindunuwan 3 days ago 0 replies      
you can learn it within 1-2 hours, start with B4. If you want to lean more check the source code if it's css. Also check http://semantic-ui.com/ , it has more widgets and styles. follow UI/UX trends to see how things can be organize in different ways, Pinterest might help you to find/follow more designs.
nodesocket 4 days ago 2 replies      
Take a look at Bulma[1]. I prefer its simplicity and flexbox first approach.


harrisreynolds 3 days ago 0 replies      
I'd learn Bootstrap 3 and then just migrate over to B4 later (if at all). The key is to learn the concepts... and those won't change much even if some details do. I'm following this approach with Easele (https://www.easele.com/).
steffenmllr 3 days ago 0 replies      
If you don't know the differences between versions 3 or 4 yet... My recommendation would be to start with bootstrap 4. You'll learn the downsides by the requirements of your project... maybe this is the hard way but that's the way to learn... Facing problems...
robertlf 4 days ago 2 replies      
Given that they've been working on 4 for so long, I'd learn 3 now since it works and the migrate to 4 when it's ready. And for the record, I'm tired of everyone bashing Bootstrap. I'm using it for a production site and I love it. I'm a one-man shop and I need to earn revenue now. I can't afford to spend the next six months learning the quirks of CSS and its crummy layout techniques. Bootstrap has allowed me to create a responsive website that works well across all devices. It also looks much more professional than what I could have done on my own, not to mention the fact that my site looks much better than those of my competitors. I'm grateful that Bootstrap is around.
kyriakos 3 days ago 1 reply      
If you don't plan to support IE9 then by all means use Bootstrap 4. But keep in mind that Bootstrap (or any CSS framework) are not a perfect solution for not learning CSS. Sooner or later you will need to modify bootstrap or create your own styles.
sfilargi 3 days ago 0 replies      
The differences are not that big to make a difference in "learning".

If your question was should I use 3 or 4, then my answer would be, depends on your project.

But for learning, the version doesn't make much of a difference as the general principles are the same.

ebbv 4 days ago 0 replies      
The question I'd ask myself is are there any features of 4 you really need right now? If not use 3, as it is more production ready. Using 4 right now you are potentially walking into a minefield. You might make it through ok but you might not.
felixis 3 days ago 0 replies      
Ditch both. Learn CSS fundamentals and for a good framework, head for Semantic UI
ShirsenduK 3 days ago 1 reply      
Bootstrap 4 with Flexbox! Because thats the future :) I'm using it on a production site; https://www.maplenest.com and its fairly stable.
beat 3 days ago 0 replies      
If you don't know either, the "learn Bootstrap" thing will be a much bigger deal than whether you learn 3 or 4.

This is doubly true if you don't know CSS in the first place.

hoodoof 4 days ago 1 reply      
When you start on an old technology you instantly incur a learning debt.

i.e. you will have to learn the new thing at some time in the future so may as well not incur that debt and go straight to the future.

pknerd 3 days ago 0 replies      
I'd recommend you to learn BS3 as there are more tutorials available.

You can always switch to BS4. BS3 is not something that's getting obsolete.

dyeje 3 days ago 0 replies      
I doubt there will be much changed in terms of core functionality and use, so yes just go ahead and learn whatever is available currently.
rootme 3 days ago 0 replies      
Bootstrap 5 Will be Best to learn in the future.
desiredpersona 3 days ago 0 replies      
Learn html and css by using tachyons. tachyons.io
craigvn 3 days ago 0 replies      
Learn both, it's not rocket surgery.
boraturan 3 days ago 0 replies      
I am in Production with 4. No problem.
Dowwie 3 days ago 0 replies      
You could have learned either in the time you spent asking this question and reading the responses
cmoscoso 3 days ago 0 replies      
What's Bootstrap?
sathomasga 4 days ago 1 reply      
FWIW I'd never use either on a production site. But for a quick-and-dirty internal site or to just play around with, I can't think of any reason not to use 4.
Is anyone interested in developing an email-based VCS?
3 points by saltypretzels  1 day ago   9 comments top 4
dosnlinux 13 hours ago 0 replies      
Take a look at GitHub desktop (https://desktop.github.com/)

I think it would be better to just have a simpler GUI for a VCS that looks andfeels more like an email client. Commits would show up as a list likeemail summaries and opening them up would maybe show the full diff. Brancheswould show up as a an email thread/conversation. Maybe extra logging detailslike "so and so has seen your commit" or "person A resolved a conflict here'sthe conflict state and how they merged it". Files involved in the commitwould look like they are attachments and "downloading" the attachment would reallyjust open the file at that commit. ...Searching for stuff is probably importantto your workflow?

...I'm not the target market, but I get it. I hate email based workflows, and I could send a couple of email critiques too ;)

I think this would work best with those working on smaller projects with maybe oneor two other collaborators that do not make changes at the same time. I makechanges, other person looks at the changes, maybe makes some corrections andsends it back. Maybe there are some people that just want to be notifiedof updates. I want to say that your target user's primary responsibility isn'tprogramming. Maybe a designer, sysadmin, or researcher? ...Someone who writesa few scripts here or there.

colonelpopcorn 1 day ago 0 replies      
TortoiseGit, GitKraken, and the myriad of other Git GUIs are your friend.
imauld 1 day ago 0 replies      
Would you also be doing code reviews/pull requests in an email client? Being completely honest, that sounds terrible.

How would rebases work? Cherry-picking? Reverts?

Email clients were build to send emails not to be VCS repos. It seems like you would be bending an existing tool to do a job that is already handled by specialized tool.

dozzie 1 day ago 1 reply      
If there will only be GUI, it won't fly. All of the popular VCS-es (and manyof the formerly popular ones) have command line, and for good reasons.There's too many operations to fit in a GUI.

Then, you set yourself to write for Windows and Ubuntu only. You're forgettingall the rest of the Linux users (it's quite easy to write something that willonly run on Ubuntu and not on Debian), BSD users, and OSX users. This isa very bad attitude.

Next, I can't see how this is supposed to work or fit a programmer's workflow,but it may be just me. I don't see how it would operate with an e-mail client(or maybe it's supposed to be an e-mail client itself?)

> Configuration shouldn't be much more complicated than setting up an email client.

Setting up an e-mail client is a quite complicated thing. Setting up a gitrepository is quite easy, on the other hand. I don't see how this is win.

Ask HN: Do you feel/fear that you're more disposable as a remote employee?
21 points by the_wheel  2 days ago   11 comments top 9
natchiketa 1 day ago 0 replies      
Years ago when I was a remote employee, I definitely did become marginalized. Projects I took on and completed were often assumed to have been done by an on site employee. People on calls sometimes spoke of me as if there was no chance I was on the call. The CEO even talked about getting me to train my replacement, apparently assuming I wasn't part of the call concerning the department of which I was the lead.

I've found that the issue with being a remote employee is the employee part. My experience has been that trusting your job security to an employer is just not as safe as it used to be. Nowadays as a freelancer who works on mostly long-term contracts, it's possible that some of my clients wouldn't think much of replacing me, but if they do decide to stop using me, I can grab another contract. My office doesn't change. My machine is still my machine, i.e. they're often the more replaceable one.

However, and as others point out here, this only works if you have lots of experience in something highly in demand.

tboyd47 2 days ago 0 replies      
Absolutely, yes.

My experience is that remote work is the exception, not the norm. The only way to get stability as a remote employee is to have an exclusive skill or some other advantage over the other employees, eg. "I'm the only remote employee, but I'm the only one who is a proven data science whiz," "The company cannot find enough locals who know Scala," etc. And even then, your stability is still contingent on this supply/demand imbalance.

taway_1212 2 days ago 0 replies      
Yep. On the other hand, solid sofware engineers are never really disposable - it takes probably 6-12 months on average for SE to ramp-up to full productivity on a team. Even after that period, he/she will grow still, having more influence on the design, the process etc. It's not a smart move to ditch such highly performing remote worker for a fresh local one.
rabidonrails 1 day ago 1 reply      
The key to not being disposable as a remote employee is mastering communication, availability, and execution. That doesn't mean that you need to constantly be available, but rather that you need to be available and communicative with your team and, of course, getting your work done on time.

If you do those three things well, then you are no more disposable then any other employee.

partisan 2 days ago 0 replies      
I've only worked for small organizations remotely, but I did have the experience of working for a satellite office (~25 people) of a large company (~6000) and we felt very alienated. They did value our work, however. I think if you are working on something that brings value then you are valuable. If you aren't doing that then you don't have a lot of leverage.
kayman 2 days ago 0 replies      
Proximity is always valued over remote.

There is something human about being able to see the person who is doing some work for you.To be able to say hello without agenda. Ask how it's going.

Yes you can do it with Slack and Skype but nothing beats walking over to someone.

In large companies, working remote made me feel disposable. Small companies, if you can get stuff done, you feel valuable while being autonomous.

mswen 1 day ago 0 replies      
Given how much work and communication about work is technologically enabled today there shouldn't be a higher risk of being treated as disposable, but despite working remote for many years for a larger corporation it did feel like I might have gone on the chopping block somewhat sooner when the recession hit. Though in the end it might not have mattered because the recently appointed president of the company took the recession as an opportunity to replace most of the founding leadership team of our business unit with people of his own choosing.
leetbulb 1 day ago 1 reply      
Nah...we're all remote :)
hillz 1 day ago 0 replies      
Yes, a little. A big issue is that people forget you're around, and so forget to include you, which makes you more disposable.
Google foobar is back?
6 points by fharding  21 hours ago   5 comments top 3
tedmiston 4 hours ago 0 replies      
Did it ever go away?
19kuba22 15 hours ago 0 replies      
Seems so.
worthshare 15 hours ago 2 replies      
what is foobar ?
Ask HN: Can European cookie warnings be avoided by using localStorage instead?
3 points by nkkollaw  1 day ago   4 comments top
ksherlock 1 day ago 1 reply      
No. The so called "cookie law" is actually about personal data and doesn't even mention cookies. Using local storage won't help. Some cookie usage is exempt from the notification. The best way to avoid cookie warnings is to not do anything that requires cookie warnings.

"The ePrivacy directive more specifically Article 5(3) requires prior informed consent for storage or for access to information stored on a user's terminal equipment. In other words, you must ask users if they agree to most cookies and similar technologies (e.g. web beacons, Flash cookies, etc.) before the site starts to use them."




Ask HN: Side projects to generate leads for mobile app projects?
2 points by npankaj  1 day ago   16 comments top 4
brudgers 1 day ago 1 reply      
Sales is challenging for every business. If all your work has come through client references and personal networks, talking with clients and references is likely to be a fruitful path to more work.

Well established and known consultants may occasionally get work solely off their internet presence. But mostly their websites support their other marketing channels: their websites provide more information to potential clients that have heard of the consultant by other means (not via Google SEO'd search).

Good luck.

soulchild37 1 day ago 1 reply      
Originally I did http://canyoumakeanappfor.me/ as satire and surprisingly it brought me few freelance small task from other developers who want to divide some smaller task to others.
farm_code 1 day ago 1 reply      
Develop a prototype app for your targeted customer.We developed prototype android app with data in JSON included in apk. We showed it to prospective clients and landed project.
npankaj 1 day ago 1 reply      
Why doesn't anyone comment on my posts :(
Most of the code you write, has probably been written before. Why not reuse it?
16 points by Apsion  2 days ago   25 comments top 11
mooreds 2 days ago 1 reply      
I love code reuse!


License matters.

Control matters (what if I need to make a change to fit a certain scenario? How does that happen? Is it propagated upstream? How/when?)

Searchability matters. How do I know what I am looking for, especially across domains and companies?

bbcbasic 2 days ago 0 replies      
I doubt most of the code I have written has been done before, as most of it relates to the business domain and specifically the parts of the business domain that are currently under focus.

Anything that is generic, e.g. a double entry accounting system, an Actor model, etc. should be in a package management system - a Gem, a Nuget Package, a NPM pacakage etc. rather than copy pasted.

At the micro level for specific line-of-code level problems (usually due to language/platform quirks) we have StackOverflow.

CarolineW 2 days ago 1 reply      
Sounds great - where is it? Can I test it? I'm not sure what you mean by "next" and "previous", or what you mean by zooming in and out.

How do I specify what I'm looking for? What level of granularity does it work at? What languages does it cover? How is this different from using libraries? How can I trust the code I find?

Does it exist yet?

billconan 2 days ago 2 replies      
I think it's difficult to search a functionality by words. For example, if I want to fund matrix multiplication, the function name could mulmat, matrixProduct .... could be anything.

second, even code is found, building requires lots of work. missing dependency, mismatching interfaces, unsupported os...

ssivark 1 day ago 0 replies      
A tangential comment: Isn't the whole point of higher order functions (in functional programming) this kind code reuse? So what you're looking at sounds like a way to search for higher order functions and patterns in a codebase. That way of framing it suggests similarities with Hoogle: https://www.haskell.org/hoogle/
dyeje 1 day ago 1 reply      
Seems like it would encourage bad design. You should be keeping your code DRY by creating reusable functions in the first place. If it's across repos, then you should probably make one of the repos usable as a library.
mattbgates 2 days ago 0 replies      
I am always reusing code from prior programs that I've written. No point in re-writing it again, especially if i need it to do the same exact thing. Even if it only needs a few changes, I'll just copy and paste the code and tweak it.
crispytx 2 days ago 0 replies      
Sounds cool. A little bit like Github's "Gist".
pravenj 2 days ago 1 reply      
Would love to test it. Where do I use it from???
miguelrochefort 1 day ago 0 replies      
99% of the code I write has already been written before.

99% of programs/apps already exist.

99% of things I say and do have already been said and done before.

Code reuse is not the solution. We must rethink software and communication as a whole. As far as I know, nobody is attempting anything close to this.

PMs are welcome.

rajacombinator 2 days ago 1 reply      
Not a very well thought out product.
Ask HN: I'm 24, coding since 14, and I don't know what to do
54 points by frostbytes  3 days ago   71 comments top 34
nrjdhsbsid 3 days ago 1 reply      
The interview process for engineers is absolutely brutal.

I almost lost hope on my last job jump when it took me three months and six on-site interviews before I got an offer.

What will help you the most in the search is probably not what you think. I thought have a GitHub and some cool projects and a nice blog would make landing a job easy for me... Annnddd 95% of the companies I talked to didn't care.

What helped enormously was studying the same questions that interviewers are likely to pull from. Once I studied hard on interview Q&A I went from no offers to getting three in the same week.

The interview process is usually borderline hazing and the questions being asked have little or no bearing on the actual job. The job requirements listed are actually just some staff engineers wish list of what he would use if he could rewrite the garbage fire that is the application you'll be working on.

It doesn't help that half the time the manager interviewing you hasn't written a line of code for ten years... or ever in the case that you're interviewing with HR.

My theory is that male dominated fields tend to be steeped in competition, or at least the goal is to appear that way. You don't want your hiring to be "weak" and new guys definitely need to "climb the ladder". This makes interviewing for these positions a complete nightmare.

Just keep up applying and remember the interviews are tough on purpose. HR doesn't look good unless they can bring in an endless stream of top tier applicants. Management doesn't look good if they hire "anyone that walks through the door". The result: companies throw away many, maybe most of their good applicants.

sambobeckingham 3 days ago 4 replies      
Are we in the same industry? 26 here, coding since 11, never got a degree. Decided to develop for a living, managed it within a couple of months - didn't even have a portfolio.

The industry is crying out for developers, theres no reason why you wouldn't be able to get a job. Yeah the industry is fast moving but businesses aren't. If they choose to use a framework, them its going to be in their legacy code base for a good few years.

Remember,you are not paid to develop, you are paid to make the business money. Would you rather hire a developer who wrote an amazing 200 LoC a day and earned you 10k or the developer who deleted 3 lines, sent a few emails and earned you 100k?

Apply for every interview, don't aim too high - you can get a junior position no problem.

sealord 3 days ago 1 reply      
I can't really say I know exactly how you feel, but I can safely say I've been in a slightly similar position before. And honestly, every time I look at frameworks like Angular or React, I feel like throwing in the towel right then!

I think it's a good idea to choose a niche, and stick to it. Full-stack devs are awesome, but there's nothing wrong in sticking to a particular competency. Looking at your profile, it seems you're pretty good at writing Swift/Obj-C apps. If that really interests you, why not stick to mobile as a domain? I feel it's easier to keep track of how the ecosystem changes, in one field.

As for jobs. I'm not entirely sure what the problem here is, but I know what it's like to not have the right qualifications. I studied engineering for two years, dropped out because the coursework had zero coding, studied Russian for 6 months and then dropped out again due to campus politics. But I've managed to hold jobs with IBM, Cvent and some media houses simply because I could convince the overlords that the lack of a professional degree didn't stop me from executing what was expected. But it was hard. Have you tried checking out spaces/events where startups converge, and probably pitch your skills to them? A good place to start would be coworking spaces. Establish a relationship with the space's owners/managers, and they'll happily introduce you to teams who need your expertise. Many startups don't care what certificates you've got, so long as you add value. And if there's a startup that does look for a degree - well, you probably don't want to join them anyway.

I hope this helps. Please don't give up - obviously you love writing code, and there's no reason why circumstances should make you give up doing something you love. :)

primary0 3 days ago 0 replies      
Make some of your code public on Github. Do a web or mobile app or two - even proof of concept type stuff but it has to be 'complete' in the sense that it should do the job it's supposed to. Use these to demonstrate your programming ability during interviews, and let employers know you're ready to learn new tools.

Pick one set of tools to be your current 'major', say Swift perhaps and spend time getting better at Swift than the rest of the stuff you know. Apply for Swift jobs and be confident!

One more thing. Always be prepared to switch your major to a new one (language, platform). If you ask me, Elixir/Phoenix has lots of potential and 2017 might be seeing a lot of job openings for it.

gigatexal 3 days ago 2 replies      
Find a niche and start a company -- solve something you hit as a programmer for example. Expose an API and call it good. You seem uniquely qualified being extroverted and competent. It's a crazy long shot I know but I found that only when I was day-tading (not the same thing) I was happiest because I was earning for myself and making my own hours and best of all trying to see if my hypothesis (or in your case your company) could pass the test in the market.
cleric 3 days ago 0 replies      
I was in a similar situation, but got an offer and moved to Beijing. Best thing I ever did.

This takes a lot of pressure of since quality is not has strict in the Chinese market, and there is not that many people who have 10+ years experience in CS things. So if you show up with a "let-get-shit-done" attitude, or just a sense of quality, you will be well rewarded.

You can also work on scales that are normally only something for the best and brightest in SF etc. Making day to day task be more challenging and fun.

On the social side, its fun to be an expat, everyone and their grandmother wants to ask you questions and you get a extended family with other expats in no time. The social pressure from home goes away and you hang out with people from all walks of life, on the other side of the world we are all just guests.

China worked great for me, but there is other new crazy markets like Vietnam, Indonesia, Burma. Where a middle class are starting to use their smartphones more and more.All these countries needs localized versions of basic apps, or as in the case of China, niche version of basic apps.

I remember when I was stuck in traffic on the highway back home from work, before China, and thinking if this is it. A change of scenery was all I needed.If you do what you love and it still doesn't feel right, my bet is that you are in the wrong place.

Good luck.

a13n 3 days ago 0 replies      
Interviews are really a numbers game. The first ten will be rough, then you start to recognize patterns, then you start getting good at them.

Apply to 200 software positions, might be good to start with internships. Every company you can think of, big and small.

Every interview you get, ask the interviewer what they thought of your answer or if there was a better way to solve the problem.

Write down every question you get asked. Google them later to learn the better answers you don't know. After a while you'll know the answer to 90% of the questions most companies ask.

Also sounds like there may be an attitude problem. If you've never had a software development job then how can you be so confident that you can get the job done? That's plain arrogance.

Approach the situation with a growth mindset - you have loads to learn and you can't wait to absorb it all from your peers. This is a lot more encouraging than someone who thinks they know it all.

And if after all this you still can't land a gig, do work for free just to get something on your resume, to get considered at the decent/great places.

You won't get your ideal job tomorrow but through hard work and dedication you can get there in a few years no problem.

ninu 3 days ago 2 replies      
I'm a PM at Google and former SWE, Twitter: @ninu

Message me and let's talk further. We're always looking for strong SWE applicants. Happy holidays and remember to never give up! <3 for code. 'Tis the season to help others.

fsloth 3 days ago 0 replies      
Have you tried approaching CEO:s directly with a phonecall? If you make a good impression that can make a world of difference. Athletism and extroversion are certainly an asset using this approach. If you can program and not just copy and paste stack overflow that should put you at least in the top half of candidates.

Also - coding skills alone are not that hot - they just make you into a replaceable cog. However, if you combine this with domain specialization this could make you into a valuable contributor. And by domain specialization I mean what ever is the core business of a business. Tomato delivery logistics? Insurance policy business rules? Trash truck maintenance database operation? (I'm making this up, but most businesses are run by their own rules and terminology - being familiar how they work gives you the right to claim 'domain knowledge').

I'm 100% sure there is a domain for you to specialize out there. You'll find it if you don't give up. Social skills are probably a really good asset here. Stop talking to HR. Start talking to the upper management directly. Everybody likes to interact with a nice person when they have the time - unless they are lizard people, in which instance they should be avoided in any case.

megalodon 3 days ago 0 replies      
I'm 23, coding since 12. Probably echoing a lot of comments here, but contribute to open source! Not only will it help your prospects of getting a job, you will be helping others which is just as rewarding (if not more). I have only studied 2/5 years of a master in CS, and I get job offers solely based on my Github profile. I don't even have a CV. The industry isn't as competitive as you think. Good developers are rare.
LammyL 3 days ago 0 replies      
I'm in Toronto and we're looking for a web developer now with possible mobile (android/iOS) work in a year. Your post seems like you would be a good fit if this interests you.
rekado 3 days ago 2 replies      
This may not be what you are looking for, but it is worth considering /not to work in the industry/. I've been coding since the age of 7 and I'm now in my early 30s. There's a lot of programming that can be done outside of this industry (e.g. by working on free software projects), and in some cases it can even be financed through grants.

In my experience a software development job is often the easiest way to destroy what you may love about programming. There may be exceptions, but many of the jobs and their limitations cannot compete with coding out of passion. Jobs in the software development industry are not the only way to make use of and grow your programming skills.

rl3 3 days ago 0 replies      
>I can't get a job because the requirements and qualifications is way too demanding ...

You seem overly concerned about this. If a company wants to prevent themselves from hiring someone perfectly capable of doing the job (namely you), then they're probably foolish and you don't want to work there anyways.

On the other hand, it's possible you're mentally hung up on having a desired skill set that's seemingly forever out of reach. If that's the case, just resign yourself to the fact that software development requires perpetual learning in a field where the ground is always shifting beneath you.

Keep in mind that a typical senior developer is just someone who has enough experience to know how to learn fast and not fall victim to common pitfalls in the process.

I suggest finding a job at a nice place to work where you'll be doing something that you enjoy, then worry about the technology stack later. Good companies usually understand that both whiteboard-style interviews and formal degree requirements are bad. The best ones explicitly state that they don't care if you're inexperienced with their stack, so long as you have solid experience.

>I really feel like giving up.

If that means starting a company as some of the other comments suggest, don't. You're 24. Enjoy your youth while it lasts, don't piss it away doing a startup.

shubhamjain 3 days ago 0 replies      
Some companies work and hire on the "trends"[1] MEAN stack guy, Elasticsearch ninja. Some companies give more weight to technical soundness and discount the Fleeting Fad of Flashy Frameworks. They focus on solving problems even if imperfectly so. Although, the job descriptions would sound daunting (they did to me two years back) but in my view, every company that falls in category two should be willing to hear from you. Sincerity, communication, curiosity and great work ethic go long way compared to scant experience in a particular framework.

A cursory look at the everyday applications that companies get would make you realise how you are far ahead of the curve. I would advice you to not get intimated by job requirements and start applying. If they don't reply, try following up (don't worry you are not intruding). Try reaching out to your network if anyone is up for hiring. Get comfortable doing interviews and meeting people. And don't get discouraged by rejections. Companies, after all, are run by people who have their own biases and idiosyncrasies. They might pick up the wrong impression or you might get rejected for a reason that is far disconnected from your coding ability.

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

sudshekhar 3 days ago 1 reply      

Lots of good advice already given out here. But I would like to add some of my own view points

About me : 23, ex-WalmartLabs, currently working on my own startup.

There are many ways to become a software developer, it all depends on what kind of role you're aiming for.

- Software Developer (SDE)

Typically the job offered to most young grads at the bigs cos (google/linkedin/walmart etc). They want to test your algorithm and programming skills. Check out [0], [1], [2] . It should take you 1-2 months to go over most of this stuff and several more to get really good. Start applying once you have a grasp of the basic principles, perfection only comes with practice.

If you're serious about such roles, I recommend spending at least 3-4 hours a day doing these problems.

- Technology specialist roles (IOS/Android/Node/Python/PHP etc)

These also require some programming knowledge. Use the above resources and at least do the basic Data Structure questions. Apart from that, showcase your projects, contribute to other libraries and/or roll out your own.

- Devops

Another cool field to get into. I am not well versed with the requirements myself but AFAIK, you need lesser DS and algo skills here and more tech domain knowledge.

- Freelance/Consulting

Just keep doing what you're doing right now. Find some consulting firm to market your skills for you. The monthly HN thread might be a good way to find leads/contacts. Can also consider bidding for projects on upwork/freelancer/others.


All in all, only thing I can say is that there's no need to be disappointed. You will get a job. You just need to prepare with a proper plan.

0 - https://www.geeksforgeeks.org (Recommended at least basic linked list, trees, arrays, graphs and greedy algo questions)

1 - http://www.leetcode.com (Do all these questions)

2 - http://www.spoj.com (can also use topcoder for this. Use this to level up your skills and land the high paying jobs )

Todd 3 days ago 0 replies      
I went through a similar phase when I was younger. I had been involved with amateur radio since I was 13 and everything in my life pointed to EE at university. By the time I got there, I didn't see the point anymore. I no longer found it interesting.

Shortly thereafter, I rediscovered programming and I've been doing it ever since (20+ years). In hindsight, I think I had just gone through my first bout of burnout. I still find electronics interesting and enjoyable. So burnout may be one aspect of what you're experiencing.

Since you're an extrovert, you have a natural propensity that many people don't have in this industry. That can be a superpower for you. You might excel at giving talks, communicating with other teams, managing groups, and the like. The fact that you enjoy development and have put in the time means that these activities won't be vacuous.

The feelings of exasperation that you have are similar to what many others--novices and veterans alike--are feeling. Things change quickly in this field. Many others have written about how to cope with this. It's a real thing but something that can be mitigated and gotten past.

You might consider taking a step back and recharging. The New Year time frame is an excellent time to do so (generally speaking). Think about a few goals that you may want to focus on this year. If you pick a project, choose one that means something to you. It could be one of your own or someone else's. We live in an amazing time of open source and collaboration.

The main thing is, don't worry. You've got plenty of time ahead of you to pick your path and make things work. The fact that you're reaching out and searching for answers is a great indicator of future success. Just keep moving forward.

keviv 3 days ago 0 replies      
I'm 30 and I'll turn 31 in January. I've been coding since I was 15. Worked in 3 companies till now and currently freelancing. Though I studied Computer Science in College, I learned to code pretty much on my own. I quit my job because I was stuck using outdated technologies and frameworks. I make less money as a freelancer and I don't regret it.

Sometimes you get overwhelmed by looking at other people's success. Sometimes, I feel like giving up too. I feel worthless looking at some people who have achieved a lot before they turned 30. But I've got back up each time I was depressed. Never give up and don't stop looking. Keep building stuff and learn new things. Good things happen to people who keep trying even after failing hard. All the best.

joeclark77 2 days ago 0 replies      
How do you know you can't get a job? Have you tried to apply? Don't be frightened by job postings. Employers tend to ask for the world, including things like requiring 5-10 years of experience in a technology that's only been around for 3 years. Business (at least in the USA, and I think everywhere) is desperate for IT talent. Maybe you won't get your first job at Google or Microsoft, but I'm sure you can find something.
shams93 3 days ago 1 reply      
It depends upon where you're located. Are you looking for remote work? Its far more difficult to get hired for a remote job than to find one that is local to your area. The bulk of remote jobs go to engineers in inexpensive countries not in places like LA and SF with a high cost of living.
cannonpr 3 days ago 0 replies      
Out of curiosity, what's do you find the main barrier to be right now for you ?For example which stage of the interviews do you suspect you have trouble with, and do you have any friends who are already developers that could run you through a few mock interviews ?
sasas 3 days ago 1 reply      
I know someone who was in a very similar situation and was getting turned down month after month. He made the decision focus on more enterprise technologies (.NET) and invested time in learning and building things with C#. Eventually things worked out.

You mention experience with Java - Maybe going the J2EE route could open some opportunities.

Some may say going down the more traditional enterprise stack is boring but I do wonder if that's where there is more work locally as opposed to work being sent offshore to a low cost dev shop that works with web /php / etc.

Of course I may well be wrong, but it's one perspective.

kanataka 3 days ago 0 replies      
Sorry for hijacking OP's thread but I would like to ask the crowd about degree and universities. As for someone outside of the US what are my options? The unis are not equal. Most of them are just meh (good enough). Why would I spend 4+2 years in some place just to get a piece of paper when I am currently earning 65k euros?

The point is in the EU most of the unis are really just not that up to date when it comes to teaching you the real deal ( minus math and cs basics). And they are inflexible bureaucrats.

bdcravens 3 days ago 0 replies      
> It is extremely hard in this industry that is changing so fast

Doesn't move as fast as you think. Tons of work doing "boring" work. Read what Scott Hanselman says about "Dark Matter" developers: http://www.hanselman.com/blog/DarkMatterDevelopersTheUnseen9...

cvigoe 3 days ago 0 replies      
Have you looked at https://triplebyte.com ?
ddorian43 3 days ago 0 replies      
What I did/do is pick something that I like/challenging/be-able-to-grow(backend) + has community/jobs(like python) + doesn't change every six months(like js stuff) + has good working conditions/payment(unlike gamedev) and be good at that. All humans(should?) specialize for better ~everything (doctors!,farming! etc).

Makes sense ?

rdlecler1 3 days ago 1 reply      
If you have the spare time, find a solid Github project and start contributing to build up your portfolio. Leverage your extroversion and give a couple of expert talks at meetup to showcase your knowledge. Basically use the talents you have to sell yourself.

PS: If I had to pick a focus area I'd do AI. Supply and demand are in your favor.

madebysquares 3 days ago 0 replies      
Don't give up! I know it sucks, but if development is your passion keep going. I landed my first job at 27 with no experience and no degree. Now 7 years later I'm so happy my first start up took a chance on me. I see that you're in Toronto have you ever thought about moving?
danhdungads 3 days ago 1 reply      
Show your project on application and ignore requirements. Just stupid HR could ignore you. Also, pm a CEO or DM/PM.
rouanza 3 days ago 0 replies      
I'm in much the same situation. I decided to travel for a while, so I went to backpackers on the south coast of africa that accept bitcoin. Mind blown. Now I do bitcoin/altcoin trading for most of my income.

Starting to grow my own vegetables aswell so I dont need cash so much anymore.

iamgopal 3 days ago 0 replies      
Github. Just open source your app code that you can, and library that you ended up making while doing so. Even as a freelancer or consultant, you will likely to get tons of prospect when you have code in github that is being followed with hundred plus stars.
CyberFonic 3 days ago 0 replies      
If you have built 15 applications in 2 years, then that shows some impressive productivity. Why don't you showcase these applications to demonstrate your abilities?
k2052 3 days ago 1 reply      
First off, two things;

1. You can do this and you are not alone! I look good enough on paper that I get a seemingly endless number of job leads. And I still cant make it through the hiring pipelines at seemingly anywhere. I know people way better than me that cant either. The creator of homebrew? Max Howell? Yep, that guy. He couldn't make it through the hiring pipeline at Google. https://news.ycombinator.com/item?id=9695102 It isn't you, remind yourself that it is not you. Just keep going forward. You will get there. You will make it.

2. But is going to hurt. The hiring pipeline in this industry is broken, completely utterly broken. It will not be fun.

Until you make it, it will be rough. It is just the way it is. There wont be any saving grace or magical advice that will make it all better. It will be rough, it is that simple. Most people outside of the right stereotypes and demographics wont make it. If you don't fit the right demographic you will have to work 3x as hard and suffer 3x the stress and anxiety as others. But the good news is it can be done. You can do it.

First step; figure out what your weakness is and begin to work on it. You can pinpoint this by figuring out where in the pipeline you are continually failing.

Then work at getting a job the same way you worked at learning to program. Getting a job is a skill, don't let anyone or yourself convince you that just because you can code a job will happen. They don't just fall into your lap. You must tackle getting a job with the same motivation, and dedication to self-improvement that you have when learning a new framework or programming language.

If you cant get your foot in the door at companies, if you cant get them to respond to you, then your problem is you look crap on paper. Go and find people that look good on paper, look up the thought leaders, the people whose work you see constantly. Then copy what they are doing. Make open source projects, contribute to their projects, write articles. Eventually you will look good and the leads will start flowing in.

Now here is where it gets harder. If you are failing screens, you haven't learned to talk right. Practice learning how to talk about your work and answering questions (and asking them). Start asking after the screens for feedback. You will eventually learn what you are doing wrong and then you can work at getting better at it.

If you are failing the whiteboard challenge phase of hiring, then get good at them. Go to HackerRank and solve solve solve until things get easier. Recognize that they are puzzles, they are not programming. There is no shame you suck at them, you aren't trained as a puzzle solver, you trained as a programmer. But you have to practice the skills they are testing, and they will be testing you to see how fast you can reverse a singly linked list. Recognize it is silly and stupid, but get good at it anyway.

pasta 3 days ago 0 replies      
I had over 7 jobs and only did an interview once.

What helped me: talk to everybody that you are looking for a job. At every party there might be someone who knows someone that needs someone.

ynafey 3 days ago 0 replies      
How did you perform in the interviews? Perhaps you need to brush up your Algo and DS skills.
Ask HN: Do a coworking space make you more productive?
9 points by ramadis  2 days ago   12 comments top 11
eswat 15 hours ago 0 replies      
As others have said, do some trials at a few and see how they work out. Though from past experience its difficult to judge the long-term experience of a space by a 1 or 2 day trial. Ask if you can get a week at a reduced rate.

Coworking spaces are not for everyone and it depends on many factors, specifically your personality type and your ultimate goal for a space. ie: if you ultimately want a space that helps you extend your network and youre willing to sacrifice the fact that the environment will be more distracting than working at home, youll more likely forgive the latter to gain the former.

aosaigh 16 hours ago 0 replies      
If you are worried about distractions, get some noise cancelling headphones (I have Bose QC35s and they make the world of difference). There's no reason you shouldn't be able to be productive in a coworking space. If you are in a good one you will also benefit from networking. Most people working there will understand to leave you alone when needs be.
WikiPaperGuy 2 days ago 0 replies      
It's more distracting than sitting next to a jackhammer. This isn't hyperbole either: I actually had to program once in an industrial setting next to a jackhammer. It was less distracting.
borplk 2 days ago 0 replies      
Not at all. I'm not a people person and it distracts and drains me like an illness.
segmondy 2 days ago 1 reply      
Try it for a month, it works for some people it doesn't work for others.
probinso 2 days ago 0 replies      
Yes. I find working next to people that are working on completely different things is hugely beneficial. If i need help, then I am required to explain my problem in a way that ramps up and keeps the interest of volunteers around me. This means that i'm required to connect with people in a very particular way.

Whenever I need privacy, I can put in my headphones. The only down side is when I need to make a phone/video call.

saluki 2 days ago 0 replies      
I tested out a co-working space last year about 15 minutes away.

I have a pretty nice setup at home, quiet, a few different setups to work from so I still get more work completed at home vs. co-working or coffee shop.

It is nice to get out every once in a while but it's not something I would do every day or even a few times per week. So If I want to get out I go out to a coffee shop.

Now if I didn't have a private area to work from at home I would definitely consider using a co-working space.

yulaow 2 days ago 0 replies      
For me yes, I find really really difficult to focus at home, even if I live alone there.

I prefer much much more coworking spaces, the more crowded the better for my focus. Ironically is deep silence the thing that disturb me the most.

tjbiddle 1 day ago 0 replies      
No, I found it distracting, personally.

However - it's great for networking if you participate in a well-organized one!

billconan 2 days ago 0 replies      
I need some separation between my bedroom and my working area.

I get lazy at home easily, I turn to lay down and just pass out sleeping.

crispytx 2 days ago 0 replies      
Pretty sure coworking spaces make for pretty shitty programming environments.
Ask HN: Possible to gain employment as an entry level back end engineer?
4 points by gigatexal  1 day ago   7 comments top 3
tedmiston 4 hours ago 0 replies      
100% yes. Build something with Django + Django Rest Framework if you haven't already. Back-end engineers are one of the hardest positions to fill, and often pay higher than mobile or full-stack web. Reddit and Instagram are two large starrups that run Python backends. Lots of companies use Python for automation and "glue" if you want to go that route as well.
tabeth 1 day ago 1 reply      
1.) Through what criteria do you consider your Python skills intermediate?

2.) You can work on the back-end and use Javascript. The two things are not mutually exclusive.

3.) "Services that others developers build upon" do not exclude the front-end. D3 is something other developers build upon, along with front-end interfaces to back-end services. There are many more examples of this.


Anyway, to answer your question: it is yes. Large tech companies readily employee developers to work primarily on the back-end. To increase the likelihood that you'd be working on distributed systems, I'd try to join a team that works on a product that is already at scale (Google Maps, Facebook Newsfeed, Amazon AWS, etc.)

imauld 1 day ago 1 reply      
It would help if we knew what area you are in.

But yes, that's a role companies hire for all the time. I believe we are currently hiring for those roles as well.

       cached 31 December 2016 05:05:01 GMT