hacker news with inline top comments    .. more ..    8 Nov 2016 Ask
home   ask   best   3 years ago   
Ask HN: How do I protect my parents from the internet?
51 points by throwawaywxc  6 hours ago   60 comments top 30
Raphmedia 5 hours ago 5 replies      
I am the opposite of most comments here. Don't stupid her away to a mobile device.

We got our mom a computer, a cheap one, and told her to play with it. Break it. Click everywhere.

Soon enough she was playing with windows settings. Soon enough nothing worked. She now knew you can brick computer, she is more careful.

We fixed the computer and she explored the internet. She asked how she could download wallpapers, we introduced her to torrents and file sharing. She got viruses. She learned that you can get virus online and they will delete your hard worked wallpaper collection. She is aware of the dangers of the internet now.

For a while you would download all the free adblockers, anti-virus, etc., she could find and put them on CDs. She learned to clean her own computer.

Right now she is very comfortable with computers and it allows her to have more freedom. She will easily connect with people online, like we do here. I'm certain it has helped her keeping smart.

She even feel out pain now. Whenever one of her neighbours lady has issues with computers they call her.

thomaskcr 5 hours ago 1 reply      
Use Deepfreeze or something similar. You'll mark a their documents directory as excluded and then every time they restart their machine it'll be back to the exact state it was in when you first set it up.

You don't want to have to support them using a new OS for the first time - you'll be in for a headache. I use Deepfreeze for anyone who is a "problem user" and most don't even realize they have it if it's set up right.

faitswulff 5 hours ago 0 replies      
I was really hoping for a discussion on how to keep parents from watching videos about the healing properties of crystals and government chemtrail conspiracies...

...but to answer your question perhaps you can get your parents a Chromebook? I'm not sure what photo editing options exist on the platform, but hopefully it's an obscure enough platform to avoid the majority of malware.

nickcw 5 hours ago 2 replies      
How about a Chromebook?

Cheap, keeps itself up to date, fully cloud based.

It wouldn't tick the Lightroom box but it does the internet based stuff extremely well with low maintenance.

breatheoften 5 hours ago 0 replies      
I think we are doing a disservice if we restrict this question to only refer to the standard malware/technological attacks. The real space for risk to our parents goes beyond damage to the computer or identity theft. There's some seriously weird content on the internet -- and some seriously strange ways it can interact with our parents aging brains.

I had an "oh shit" moment when my mom described a website that added automated popups over a text editor field -- as she typed it would periodically throw up a pop up with encouraging commentary and editing advice "good idea, can you elaborate" etc -- and it took her a long time to realize that the intellectual/emotional support she was feeling wasn't actually coming from anywhere ... she also got severely addicted to the political campaigns and facebook -- and ended up with a news feed that absolutely barraged her with a constant stream of fake political news stories ... got her down from her 4-6 hours per day of internet usage but it was so fast -- really scary stuff.

davio 5 hours ago 1 reply      
After my mom got scammed online, I had "the talk" with my parents and we agreed that they would just use iPads and iPhones.

I've had no tech support calls for a couple of years now.

I think a chromebook is a good option if a keyboard is required.

It's a losing battle at this point. Your time is better spent educating them against social engineering attacks (I'm still afraid my mom is going to return a call to the voicemail the "IRS" left)

theandrewbailey 5 hours ago 2 replies      
tldr: Linux.

I had more or less the same issue (except things still booted) with my parents about 5 or 6 years ago. In a move I thought was insane, I put them on Xubuntu. I moved them to Mint for a while, but they are back to Xubuntu. It's my preferred distro, and the Ubuntu base (for good support) and XFCE (Windows familiarity) made me comfortable it was Mom and Dad proof. Aside from showing them where things are, there have been zero problems. Turns out that Linux is just as good for email, web browsing, Youtube, and solitare.

I haven't used Lightroom, but how does (say) RawTherapee compare?

bsenftner 5 hours ago 0 replies      
In this respect, the FTC has failed 100% in their mission. Normal, non-tech consumers cannot use the Internet without falling prey to the outlaw landscape that is the WWW.

I think you need to explain to them that the Internet is too much like the Wild West, and they need to stick to trusted web sites, as their "sight" is not tuned to see the dangers. Leaving them too scared to randomly surf might not be a bad thing, in this situation. I have the same type of situation with my 85 year old mother. She is somewhat tech savvy, but not enough. Her browser has every possible 3rd party toolbar, no matter how much I educate her on the situation...

baby 5 hours ago 1 reply      
Story time:

My father complained of virus and malwares on his computer.

I came home, formatted his hard drive and re-installed windows.

I go to eat lunch with my mother in the kitchen, a few minutes later I hear "[baby], I have a virus on my computer!". WHAT?

The first thing he did was to google for "chrome" on internet explorer and use the first result. The first result is a google ads for a malware containing chrome. Had to reformat his computer one more time. I think that's the moment where he got it.

Zyst 5 hours ago 1 reply      
Linux machine, subscribe to more adblocker malware prevention lists - my mother's laptop has more ticks on the adblock subscription lists than squares - and in case of my father an awkward conversation where I told him a list of safe porn sites.
RankingMember 5 hours ago 1 reply      
While I'm loathe to recommend a walled garden solution and not a particularly big Apple fan, this is exactly where such a solution shines. An iPad is perfect for this situation.
Mz 5 minutes ago 0 replies      
I will suggest you put together some tutorials on some of the basics. Preferably keep them to one page and include screen shots.

You cannot protect people from their own ignorance.

clentaminator 5 hours ago 0 replies      
It makes me smile that while proponents of censorship and blocking of parts of the Internet use the "Think of the children!" argument, I never hear anyone shouting "Think of the adults!"

Of course, in this case we're trying to protect people from themselves rather than the outside world, but still...

johngalt 5 hours ago 0 replies      
Here are your options:

Revoke local admin privileges. It will stop a lot of the click-click to install bullshit, but it also means you will get a lot of calls about "access denied" whenever they want to update an app that needs admin rights. Give them an admin account to install/update software separate from their normal account.

Simplify the device by going tablet/chromebook. Probably means you will get a lot of questions regarding how to use/setup the new OS.

Shorten the loop on backup/rebuild and let them hit the iceberg. Good backups and fast imaging with drivers pre-loaded can make cleanup a lot easier/faster.

akerro 5 hours ago 1 reply      
Install them Ubuntu, KDE Neon or Mint. Works for my parents since... I dropped Windows XP.
paullth 5 hours ago 0 replies      
In addition to the stuff you mentioned, for my mother in law I:

removed her user's admin privileges

install flashblock - one of the ones where you have to click on the video to make it run

spent a long time explaining that you will never be chosen to win something, MS support never rings you to tell you have a virus, if something takes over the whole screen and tells you anything suspicious/implausible to press alt+f4

convinced her free music isnt worth the risk of downloading something that trashes the machine. installed spotify

webwanderings 5 hours ago 1 reply      

I bought the cheap one (Lenovo) sometime ago. It has a good battery life, very lightweight and compact. I have seen the same being used by many people (in the same category). It is the most trouble free and productive piece of material there is. Ignore all these security software and Linux etc. Just hookup uBlock and Ghostery into the user's Google Chrome account and you're done.

hawski 5 hours ago 0 replies      
I am currently working on experimental Linux distribution for my parents that would be a bit ChromeOS-like.

Ideally for my mom ChromeOS device would be ideal. For my dad it would be not enough as it seems in your case. Maintaining my parents computer is something that always gets back to me. Now I am also living few hours worth of travel from them so it is even less convenient.

Older computer couldn't handle Ubuntu of the time. So always something was not working correctly. Updates on every system are constant source of headaches. My dad got used, but much more powerful machine. I installed Windows 10 for them thinking that Windows is now better and that with perpetual updates it will be out of trouble for me. I installed also Chrome Remote Desktop for service. My dad preferred Linux experience. I hoped that he just needs to get used to it. He was happy with Windows Store for a while, until few of the games he enjoyed playing failed in strange ways. It would not be that bad, but updates on Windows 10 are huge and with 20-30GB free space left after installation it does not update anymore. It only downloads the update, tries to update and fails - on every reboot. My dad bought an external HDD so probably it could be resolved. However he still would like to have Linux in there - old computer was very slow, but it did not fail in such magical ways. For now I plan to install Ubuntu for him and see how it will behave.

For my own learning experience and a bit of enjoyment I started working on my own Linux distribution. The most important thing for me is to have hassle-free updates like on Chromebook. I prepared squashfs image with Firefox and intend to have two partition scheme for rootfs. Updates would be then just download and restart away - completely automatic and in case of failure you would still have previous working image. I could test the image locally and optimize it for fun and profit. For now I base it on Gentoo to build lean system in a similar fashion to ChromeOS build.

[slight EDIT]

rihegher 5 hours ago 0 replies      
You can start with ubuntu that is immune to most of malware and enough if your parents needs are internet + video palying and downloading + office suite
yathern 5 hours ago 0 replies      
If simply educating them on what not to do (clicking on 'free' stuff, downloading without discretion) won't work, I'd suggest switching out the OS to something a little less targetted by malware. I recently got my mom a chromebook, which she loves. You say your dad uses lightroom though, so that might not work for your use case.
EnderMB 5 hours ago 1 reply      
In my experience, don't. Offer them your best solution for a novice user, which for me is usually an up-to-date machine with an ad blocker, and make sure that you're open for

Ultimately, they're adults, and the last thing your father will want is to be treated like a child on his own machine. If he fucks something up, fix it, and tell him what he can do to not have that issue come up again.

serg_chernata 5 hours ago 1 reply      
There are already good solutions below. The one thing I would add is that this may not be a "silver bullet" kind of problem. I'd throw everything I can into the mix to create layers of protection. Educate them but also add software solutions to the mix.

A small addition, how often do they need to install new software after initial setup? Maybe take away admin privileges?

konradb 5 hours ago 2 replies      
Not the answer you want but an ipad might limit the damage that can be done. It would remove the need for education.
AlexeyBrin 5 hours ago 0 replies      
You could limit his user rights, make him a Standard user and don't let him install new software.

Also, have a look at how suitable a Chromebook will be for his workflow (simpler to maintain from your perspective and harder to infect).

nxm 3 hours ago 0 replies      
Get them a Chromebook - perfect for their needs and no yearly formatting required from my side
elchief 4 hours ago 0 replies      
I made myself admin and my dad a regular user so he'd stop installing malware. So he threw out his computer and bought another one...
vgallur 5 hours ago 1 reply      
If you are stuck on Windows or Mac you can try a program that restores the computer to a safe state on reboot, like Deep Freeze.
namank 5 hours ago 0 replies      
This is a very important conversation for this decade. Do post your solution on HN once you have it.
joesmo 2 hours ago 0 replies      
Here's a couple of things you can try:

* Drop linux on it with a simple GUI on it and lock the machine down. Don't give him root access or admin rights. Make sure the machine updates and backs itself up without intervention.* Set up his browsing inside a vm that gets recreated on boot (any host OS, linux as guest would be ideal but any will do).

rcamp 5 hours ago 0 replies      
I specifically wrote my book, Digital Survival Guide, to help address this knowledge gap in digital security and safety that our society has. However, education may not be enough for everyone and you may need to take a sandbox approach. Have them use a VM and expect to refresh it from a snapshot often. Check out my book, you and your parents will find many useful tips.


Ask HN: List of frequently used UI notifications texts
18 points by alvil  2 hours ago   5 comments top 3
gusmd 2 hours ago 2 replies      
Especially as a non-native English speaker, I often rely on the Material Design guidelines as my source for UI writing style.


I see you first sentence was taken directly from this, so I guess you already know about it :)

butz 2 hours ago 0 replies      
Not actually a list of texts, but if you have a few minutes, this might give you right idea how to write them: https://www.smashingmagazine.com/2016/07/getting-practical-w...
combatentropy 2 hours ago 0 replies      
I recommend the Elements of Style, 3rd ed. https://amzn.com/0205191584

(I flipped through the 4th edition, and the examples and stuff seemed overmodernized. It felt diluted.)

Ask HN: When did you feel to resign/leave your last job?
11 points by introvertmac  4 hours ago   13 comments top 9
chaoticgeek 4 minutes ago 0 replies      
Extremely underpaid ($11.50/hr as their lead dev and no benefits) to some place where my salary was doubled with benefits.

No advancement past what I had obtained. Wasn't going anywhere. I did stay there for three years though. Lots of experience that made it so I could easily turn down offers now.

I gave them a month notice to find someone before I left. They didn't find anyone until a month after I left.

keviv 56 minutes ago 0 replies      
I spent close to 6 years at a startup before quitting. I was an early employee there. Deep within my heart I knew I had to. I couldn't explain it to my friends or my family what made me take this decision. All I knew was it was about time. I just got too comfortable working there. Life became too monotonous. In the end, I just followed my heart. After 8 months, I might be making a bit less money, I might have given away a significant part of the equity I owned, but I'm happy. I've been reading a lot, learning things which I always intended to. Been freelancing for a while now and I couldn't have been happier.
tom_b 1 hour ago 0 replies      
Lack of obvious career development opportunities. Concern over the viability of the business. Discomfort with idea that projects were frequently cost-centers without tangible benefits for customers.
Raphmedia 41 minutes ago 0 replies      
It became a struggle to increase my value as an employee. So I moved on.
eonw 2 hours ago 0 replies      
i left my last job due to lack of any tansparency from upper management, bad management in general, bad culture and knowing that in the sector i was working in(non-profit healthcare), I would always be income capped well below the going rate for my skillset. and honestly it just wasnt very interesting to work in a place that was allergic to anything even remotely cutting edge and decisions were usually made by people that had no idea what the outcome would be, and based the decisions on how much they liked the sales people. ugg.

i felt like it was a bad fit after only two weeks, stayed for 18 months because my mom worked there.

greenbullet 1 hour ago 0 replies      
I was at the same place for the best part of a decade. I left as I was pretty frustrated with pay, which wasn't bad, but wasn't going up.

Partly stayed because it was familiar, I was worried there wasn't something better (I was wrong).

I've moved to a job that I might not have been able to get if I'd left earlier.

The timing was right when the opportunity turned up.

Like any relationship, you know when it's not right, but you also no if you are able to do better at that moment.

thinkTank1 2 hours ago 2 replies      
- Salary was slashed by less than 50% because of little/no revenue. (is this normal?)

- Startup has 2-5 customers after running for almost 2 years.

- I build apps that no one seems to use. Coincidentally I'm informing my boss them about my resignation during standup tomorrow :)

holycode 2 hours ago 0 replies      
I'm still in the job, but I'm looking for a new one. My reasons are stagnation, no proper training and mentoring (I'm a junior web developer with no prior experience), an extremely low salary (borderline minimum wage), among other reasons. If only I had enough saved-up money to survive for a couple of months, I'd have quit a long time ago.
richfnelson 1 hour ago 1 reply      
I left a web dev job about a month ago. I liked a lot about the company. It was a three-man dev team at an e-commerce startup and we ran a Rails/Angular webapp. The founders were great and the culture fit my personality very well.

I left the company after ~6 months because I did not get along well with one of the other developers. We had extreme communication problems and they were causing unnecessary stress.

I like to talk to people and joke around with my coworkers. This individual did not seem to have the same desire. On the companys general slack channel, almost everyone would get in on the socializing, with /giphys and jokes and whatnot everyone except this one developer. They never, ever said a single thing on slack that was not business-related. They never even said anything out loud that was not business related.

This communication style caused a lot of issues during code review. I would spend time creating, testing, and QAing a feature, and then code review would take at least three times as long as development. Id get code comments on GitHub that said things like I wouldnt do it this way or I dont like the use of a directive in this case. Read this: https://docs.angularjs.org/guide/directive. Now, in most cases, changes to the code probably were necessary. However, I felt the tone of the comments was unnecessarily inflammatory, bordering on outright insulting.

I told my supervisor that I thought the code review communication could be improved and he agreed that the code review process seemed to be taking too long. He decided that I should get code reviews before the feature was complete, at whatever I determined was a good point to pause development for a code review. This led to an even longer development cycle. I felt as though this developer pegged me as unskilled, and thus found every excuse they could to tear my code apart. On several occasions while refactoring, I would move code snippets that were written by this developer into a new method or file. GitHub would regard these snippets as if I had written them. The developer would comment on this code that _they themselves had originally written_ and come up with a reason as to why it should be refactored or Im not using the most efficient method, etc. It got to the point where I wouldnt even know how to start working on a project. I realized it didnt really matter. I could write the best code of all time and my co-worker would find a reason why it should all be thrown out. So I just started writing garbage that I took no pride in because it was going to get ripped to shreds anyway. Round after round of code comments until the code would look exactly as if this other developer had written it themselves. It was demoralizing, to say the least.

I really wanted to succeed with this company and had I been in any other department I believe I would have. I got along very well with everyone else there. Within a month of putting myself on the job market I found a new position that paid more and has a dev team with no assholes. I am much happier.

Ask HN: How much productivity have you lost because of this election?
14 points by mijustin  5 hours ago   7 comments top 5
pcunite 13 minutes ago 0 replies      
I have been glued to researching various topics ever since Hillary Clinton was forcibly pulled into her van at the 911 memorial this year. What I saw, and what was said were so at odds with each other that I put in a lot of effort this year to see just who these people were.

What I have discovered is shocking.

baccheion 2 hours ago 0 replies      
I spent no time on it. There's nothing going on. Both candidates are meh, and it's looking like it should've been Bernie Sanders. I have a feeling this is the last straw and that America is done. The new administration will essentially be doing nothing but cementing into place all the garbage that exists.

America lost its greatness due to feeding into idiot, backward, ignorant, prejudiced, close-minded, judgmental, etc points of view, and into doing the dumbest thing. The Bush years did a lot of damage, and not only has nothing been done to repair/restore anything, the idiots around have done everything in their power to make things worse.

motoford 2 hours ago 0 replies      
I'm in USA. Not a whole lot up until the very end. I tend to ignore it pretty well until it all gets close then obsession with it kicks in. I pretty much know election day is a productivity write off for me so I just don't worry about it, its only a day every 4 years.
joeclark77 2 hours ago 0 replies      
The current political crisis has been a productivity drain for me since 2008, with Tea Parties to attend, three grueling Presidential campaigns, two midterms, and all the primaries. And the shooting hasn't even started yet! I'm afraid all we'll be able to say at the end of today is "it's the end of the beginning".
lhorie 5 hours ago 1 reply      
Not much. Way too much drama. If predictions are right, Hillary is going to win. The end.
Ask HN: Is there a good text editor on Android?
4 points by rayalez  1 hour ago   1 comment top
Mz 26 minutes ago 0 replies      
Have you tried Qute?
Ask HN: Have you ever thought of leaving programming for something else?
360 points by dvrajan  17 hours ago   488 comments top 169
david927 14 hours ago 14 replies      
I currently work in a good environment where I'm appreciated and paid well. Not many people in the world can say that, so I have a lot to be thankful for. Programming has done good by me.

But I don't love it. Alan Kay is right, it's like building "an Egyptian pyramid with millions of bricks piled on top of each other, with no structural integrity, but just done by brute force and thousands of slaves". There's no elegance and no higher vision. It's an Asperger profession; smart but artless.

I would prefer, if I could retire, to make short films and maybe to write plays. But I can't retire yet. So I'll push stones. It pays well.

clentaminator 10 hours ago 6 replies      
I think about leaving programming every day. I love programming, but I'm not sure I enjoy software development as a career.

I enjoy coding and understanding how computer systems work, but I don't care for the constant changes in tools and techniques in certain domains of development. I'd rather practise with and improve my existing knowledge of a subject, instead of constantly playing catch-up with someone else's tools and workflow. I also don't care about waterfall, agile, scrum, kanban, scrumban or any other development methodology that I've missed. I hate that my job has me chained to a desk (sitting or standing) instead of being able to use my body. All of this makes me think that real-world software development doesn't really suit me.

I'm about six weeks into a new job after leaving a company I worked at for just over five years. Amongst many other reasons for leaving, I thought that a new environment would change how I felt about continuing a career in software development, but I'm not sure that it has. I'm aware of how lucky programmers have it, but I can't help feeling like I just want something else. Grass is always greener, etc.

What are the career options that allow one to work mostly by oneself in one-to-two week stretches without having to play the development workflow game with the daily standups and so on?

Sadly I'm not sure what I'd do if not programming, but music is a big interest and I'd considered teaching music.

tl;dr Woe is me ;)

themodelplumber 17 hours ago 2 replies      
Thought about it, and then tried it. I followed my dream and started a creative project that had been dogging me for a long time. EVERYBODY wanted me to do it. Family, friends, people on the street with whom I discussed it. I expected it to be a big moneymaker. And it didn't work out. Not only that, but it became very clear that it was a really poor fit for me on a fundamental level.

I'm glad for the experience, though.

Going back to programming, here's what I figured out:

- I was working on stuff I didn't enjoy, with people I didn't particularly care about.

- I was taking on new work projects without any particular selection criteria.

- I wasn't thinking about the kinds of work that got me excited about programming and chasing it down.

So I recently nailed the first two back into place. I'm working closer to my values system rather than paychecks. In exchange, I'm just saving more money so I have more freedom.

Anyway, burnout is real. I thought I was done for sure and that my interest in programming and computers was a thing of the past. But that was just the burnout talking.

It helped to keep a journal during this time. Not a chronicle, but a thought-dump process in which I asked if my life was actually improving daily. That made it pretty quick to pinpoint my frustrations, as you can only write about the same pains a few times before you start to really zoom in on the causes and potential solutions.

Good luck to you, however it turns out.

JaumeGreen 12 hours ago 2 replies      
I left programming for dancing.

I'd been working at the same job for about ten years, and I started to work on a different group that made the same product with a never technology. I hated that, I found it hard to work in that and I wasn't that productive. Also I had some burnout, some depression, and not much to look forward to...

Except for dancing. I had begun some years prior and I became somewhat good, and I even began to teach.

Then an offer came, resign from the job for money was offered to all, I accepted.

For about two years I just gave classes and worked as staff. Unfortunately the money was not enough.

Then I started helping on the dance school's webpage. The money wasn't enough yet.

So I got a programming job and resigned from most of my job in the dance school. I just teach one hour a week.

I really lost my dream job because of money and not being good enough earn enough to life with that.

oftenwrong 5 hours ago 1 reply      
Yes. I love programming, but I really dislike how inactive I must be to work as a programmer. I don't like sitting/standing all day, and being chained to the computer. Short activity breaks, and workouts in the morning and evening don't cut it.

When I'm outdoors and active, I am so much happier. If I am on a multi-day outdoor trip to hike or rock climb, I feel like a completely different person. This is especially true on long trips that last more than a week. I have much less stress. I smile compulsively, instead of baring my usual strained expression. I have more energy. You might think at first that is simply because I am on vacation and I don't have to think about work obligations, but when I am on a normal (non-outdoor) type of vacation, I don't get the same feeling at all. I think it has more to do with the outdoor environment and physical activity.

I recently met someone who works as a park ranger, and I became envious of her job. I would love to patrol the woods all day as a ranger, or to be a mail carrier walking from house to house. I make much more money as a programmer, but "money cannot buy happiness", and I wonder often if I should change course.

sean_patel 15 hours ago 4 replies      
Programming is a creative art, and when I say that to my non-programmer friends, they laugh it off, but if you think about it, it is true.

Just like artists, the programmers, coders, developers all design and create new things that didn't exist before, and no 2 programs or applications or completely functioning code will be identical for anything other than a fizzbuzz type test.

So it is natural for the creatives to experience burnout and falsely interpret that as having lost interest in our craft / art. I went through this too at a fairly young stage in my career as I had accomplished a lot in 5 short years. I had the pedigree and training -- internship at Magnum Photos in New York -- so I tried being a War photographer like my Grandpa and traveled to Iraq in 2008. 1 week in there and I came running back. It was a fairly freaky experience.

You think you are there to document something big and consequential to the world and initially it is exhilarating leaving the cube and CRUD applications, but all it is for most part is an online newspaper or blog paying you a few $ per shot. Totally not work the risk. Plus the Radical Islamic Jihadis (ISIS) crossed a new line and started kidnapping and beheading journalists.

I also realized I didn't truly have the stomach for it. Imagine actually being on the scene at 1 of these photographs, and having the courage to shoot, only to find out the media (AP, Reuters) won't publish it. => http://www.theatlantic.com/international/archive/2014/08/the...( When Kenneth Jarecke photographed an Iraqi man burned alive, he thought it would change the way Americans saw the Gulf War. But the media wouldnt run the picture.)

Like someone else has stated here, we have it really cushy indeed. So don't get used to it and "itch" for something else. Just work on your side-projects, or learn a new language, or simply stop by to smell the roses and live a little.

Your passion will soon come gushing back and you'll start to wonder why you ever thought of leaving this creative, immensely satisfying craft in the 1st place!

WalterBright 14 hours ago 1 reply      
I did consider a career as a lion tamer, but the vocational guidance counselor said I was an appallingly dull fellow, unimaginative, timid, lacking in initiative, spineless, easily dominated, no sense of humour, tedious company and irrepressibly drab and awful. So I decided to stick with programming.
JDiculous 14 hours ago 3 replies      
Yes, I want to do something more meaningful than build and maintain web CRUD apps. Despite the media perpetuating this notion that there's a shortage of engineers, I actually feel that this field, particularly the web space (where most of the actual jobs are), is starting to get really saturated. And from a job security perspective, the barriers to entry are fairly low.

These days I'm most interested in economics and politics because I believe that our most important problems right now are in this realm (eg. poverty, job automation, healthcare costs, housing prices, college prices). The Javascript framework wars are laughably insignificant compared to these problems, yet unlike web development, there aren't enough logically-minded people really tackling these problems. Unfortunately there's probably no job out there that I could realistically obtain that would pay me to work on these problems, thus I'm just saving money for retirement and learning on the side.

sprocket 5 hours ago 1 reply      
I graduated with a degree in CPSC in the early 2000's and worked in the field for about 10 years before my wife and I moved to a more rural locale, bought a small herd of dairy goats, and started making cheese. It's a very different and difficult life, but on the whole is very rewarding.

The money will never be the same as working in tech, and you'll almost certainly have to scale back your lifestyle expectations. I still do remote freelance work in slower periods to keep cash-flow flowing, and to fund farm expansion as we grow.

Here's a fun video of my non-tech lifestyle: https://www.youtube.com/watch?v=fb0ur8cdOfY

More recently, I've been applying my past development experience to farming automation using Raspberry Pi's. I built an automated greenhouse controller last year and this year am working on a device to automatically mix and dispense milk replacer for all of the goat kids we have born each year. (You can of course purchase commercial versions of the projects, but it was a fun application of programming, while learning about the RPi and automation, which I'd never done before.)

tobz 1 hour ago 0 replies      
I've thought about going back to school to get a Mechanical Engineering degree, or Chemical Engineering degree.

I grew up with my father being a machinist, and eventually going on to being a QA specialist for a large defense contractor, so I've be lucky enough to be able to learn a lot when it comes to machining and designing. Spitting out a 3D design from a printer is really cool, but nothing beats slapping a chunk of steel into a Bridgeport and ending up with a precisely-milled widget.

My wife is also an engineer at one of the largest (probably largest) physical testing companies in the world, and got her Chemical Engineering degree as well. There's constantly stuff she's telling me about, problems at work, custom things she's doing, and we get pretty deep into conversation sometimes about how to best solve the problems.

The money just isn't there compared to being a software engineer, but like a lot of people have said in this thread, maybe this is just a "grass is greener" thing: these problems that I can't work on just seem that more tantalizing than being the person who is actually dealing with a backlog of them. Vacationing in other people's jobs is fun and easy, and ignores actually being that employee.

SyneRyder 15 hours ago 8 replies      
I'm mostly happy with programming, but I often think I'd like to try working in a coffee shop, especially a Starbucks. I spend so much time in cafes as a customer, and I really appreciate the difference that a barista's smile or greeting can make to my day. I'm curious to experience that from the other side for a while. I also read books about retail businesses & brands & Starbucks & customer experience for enjoyment, but I'm sure practice is wildly different from theory, especially at ground level dealing with customers for long hours.

But I've never tried applying, because I have no retail experience, and my work experience is mostly as a lone-wolf remote developer or indie developer (also I'm middle-aged now). Always thought I'd be laughed out of the interview. But I still think one day I'd like to try.

pjmorris 9 hours ago 1 reply      
As we were driving to lunch one Friday, another programmer and I saw a backhoe in use, and started favorably comparing 'backhoe operator' to 'programmer': you get to work with heavy equipment, you can see the results of your work, when the day is done you go home and don't have to think about it. We laughed and cringed, as backhoe operator sounded like a better job by the time we were done.

For me, I can't do anything else. I'm sure I could learn something else, and I certainly get burned out from time to time. However, I find the whole development process fascinating, I still get a kick out of solving the puzzles and making things work, I am deeply gratified to see something I made help someone else solve one of their problems, and code is affecting more and more of the population for better and worse. There's no place I'd rather be.

There's a scene in 'Heat' where De Niro's criminal and Pacino's cop characters are talking about why they do what they do over a cup of coffee at a diner, and it turns out they're both compelled and couldn't do anything but what they do. I'm not sure what I'll do when the Butlerian jihadists or the twenty-something Angular developers come for me, and I have to go find something else to do, but I think I'll keep at it until then.

amerkhalid 4 hours ago 0 replies      
I love programming especially solving difficult problems. But sometimes I fanatize about being a professional photographer or a writer. These 2 professions seem perfect to me. Perhaps because they provide freedom to work from anywhere, and be creative. When I was pursing these professions semi-seriously, almost everything around me was an inspiration or a creative idea; movies, driving, conversations, food, advertisements, etc.

About a year ago, I started portrait photography semi-profesisonally. I really enjoy photography but didn't enjoy the business aspect of it. And it was hard to coordinate with clients when you have a fulltime job.

A few years ago, I got serious about fiction writing, wrote a lot but could not write anything that I felt was good enough for anyone to see.

Now I am just focused on programming and enjoy photogrpahy when I have free time.

segmondy 7 hours ago 4 replies      
A bit too late, but if I could do it all over again, I would have gone into health care. I have lot's of friend in the industry.

Ask them about their day, they just saved lives - heart surgery, brain surgery, trauma stabilization in ER, just saw a toddler through cancer treatment, and so on and so forth.

What did I do? Oh, I wrote code.

karmajunkie 17 hours ago 0 replies      
I got kind of burned out after I got laid off at the tail end of the first dotcom implosionI'd stayed in a really toxic environment for a couple of years too long because things were rough for a junior/early-mid-level developer back then, at least in my market. So I spent several months depressed and unemployed before deciding to go back to school which ultimately led me to preparations to go to med school.

Ironically, I took a semester off and took a contract gig for a few months to pay off some bills and save up some cash, and that turned into a full time job writing software in the public health sector. I never did return to finish the undergrad, and have doubts I ever will, as my career in software has been about as good as medicine would have been when you balance the ten extra years of earnings against a slightly higher salary. The only reason I'd do it now would be to pursue a masters in something interesting.

I think if I had it to do over again I'd have probably just stayed in the market a little longer and skipped out on the student loans. I loved biology and medicine but i'd love to not be paying off the student loans too.

Kiro 13 hours ago 0 replies      
No, I started my programming career late and have had many different jobs before that. Programming is the only job where I don't loathe being there and constantly watch the clock for the day to end.

I think you should experience how horrible 99% of all other jobs are. Then you will truly appreciate what you have.

jamez1 17 hours ago 3 replies      
Left to work in equities after 5 years of software dev. I find the work much more stimulating mentally, as you learn about the world and how business works, not just abstractions.

Luckily there is still a lot of use from my old skill set, and I suspect there will be more as time goes on.

Tiktaalik 3 hours ago 2 replies      
I definitely have. I enjoy programming and I think I'm pretty good at my job, but I can't help but think that maybe there's something out there.

A lot of my most compelling business ideas I've ever come up with haven't been apps or anything I could start programming right away, but rather have been totally different brick and mortar retail businesses. Opening a retail business is something I've thought about doing for a while, but I looked into some of the details and was somewhat turned off by the extremely high startup costs. I simply wouldn't be able to afford it without some partners.

One of my largest interests nowadays isn't software, but rather cities and urban planning. The idea of designing city features that would have a real, dramatic impact on people's every day lives is really compelling to me. I've thought about taking a break from software and working in this area, but at this point I really don't know if going back to school for this stuff is worth it at all. It's unfortunate that I hadn't discovered I was so interested in this topic when I was in highschool or early university.

navs 51 minutes ago 0 replies      
Oh lord yes, I've left it behind only to take the next job offered to me and becoming a Business Analyst. Not enjoying it so far.

I'm putting more focus at the moment on exploring issues of Mental health in the IT industry as it's something I've dealt with and continue to deal with.

That seems to give me a degree of fulfilment. Doesn't pay the bills though.

abawany 15 hours ago 0 replies      
After a particularly terrible period at a large e-commerce company that comprised of endless and useless meetings, stupid product plans to nowhere, psychpaths galore, brutal waste of shareholder vale, and enough process to make Hell seem desirable, I decided that maybe I was not cut out for the original passion of my life, i.e. development. I started to take evening classes in accounting etc. with the aim of getting a CPA. I also left the above corporate Hades around that time and found a situation at a quirky startup, where I realized that software development is truly what I love, particularly when unencumbered by process feces. Off by the wayside went the CPA plan and I went on to learn more things in a year at that startup than I had in many years at other places. I also realized that leaving something that I have loved and lived since I was 13 is a little difficult and that the things that were causing my disillusionment were not related to my passion but to various unfortunate diseases that have come to afflict my industry.
manoj_venkat92 6 hours ago 0 replies      
I love programming and am also part of a start-up developing a cutting-edge computer vision tech.

I have learnt a lot of concepts by learning programming that can be applied to many real world problems as well.

I desperately want to work in Renewable energy sector like Solar, Wind.

And the best part, my idol, Elon Musky Musk has applied the concepts that we programmers deal with in day-to-day life to producing machines that produce machines that are currently some of the best solutions to the problems like Global Warming, Energy storage & Electric cars manufacturing etc.

This part really gives me kicks. Even though, I think about leaving programming may be in 10 years(I'm currently 24), but the concepts I learnt are going to come in super-handy what ever Engineering things I'd like to do.

mimming 15 hours ago 1 reply      
After years of software, I discovered that my favorite part of the job was teaching stuff to my peers.

I started by dabbling in teaching:

- Mentored some high school robotics teams in the evenings- Taught night school / weekend classes as adjunct faculty at local universities- Shifted my day job from developer to developer advocate

And then a few months ago I took the plunge... sort of. I went on sabbatical for a semester to teach CS 101 full time at a small university across the country.

It's been a great experience, but it made me realize how much I miss programming. I really miss the intellectual growth that I get from working with professional software developers. I suspect I'll resolve the conflict by going part time in my day job, and picking up more classes as an adjunct.

dbjacobs 15 hours ago 2 replies      
Was a programmer and researcher in AI and security for 20 years. 15 years ago was feeling burned out and started looking for a financial planner for my family. I fell down the rabbit hole learning everything about the field and with the birth of my third child 14 years ago, I quit my job and opened my own business as a financial planner.

Programming and computer research went back to being a pure passion. And I haven't looked back since.

gandolfinmyhead 13 hours ago 3 replies      
Sadly yes. It's been very frustrating at times. I thought of becoming an environment artist for videogames instead.

Though OP hasn't asked for the following here goes, I feel the IT field has a lot of people wanting to change career paths, more than any other field because of the following:

1. Programming is an art, if not done right and assuming the product is in continuous development, will come back to bite you in the rectum like there's no tomorrow.

2. 99 percent of the industry is about shoving products out without any care for proper architecture or refactoring of any sort. Result -> feature addition/ bug fix times grow exponentially with time.

3. The IT field has no concept of overtime pay

4. 1 + 2 + 3 => loads of burnt out devs :-> people wanting to switch jobs regardless of how high paying programming can be

Entangled 7 hours ago 0 replies      
Code is clay. What you do with it can make you a Michelangelo or a bricklayer. Sometimes it can make you good money, sometimes it becomes tedious in the wrong job. Still if you pursue other economic means of production, code is always a way to express your imagination, a nice hobby to have.
cygned 13 hours ago 4 replies      
Call me crazy but I have always had this exit plan. If my business completely fails, I'd give away my stuff and live in buddhist temples, would visit Tibet, travel around and spend my days meditating and helping people.

Sounds like an insane idea, but as a Buddhist that would be a fulfilled life for me.

dcw303 15 hours ago 1 reply      
About ten years ago I took a year off to teach English in Japan. Within a couple of months I was dying to go back to development.

Trust me, even compared to other white collar jobs, you would not believe how cushy we have it.

stunthamsterio 9 hours ago 1 reply      
Writing. I love writing, I've published a couple of technical manuals and I'm currently submitting to various short story anthologies whilst working on another (Self published) manual. Writing leaves me happy and fulfilled and generally free of stress.

Trouble is, it does not pay the bills. I'm currently working very hard to pay off all my debt and once that's done I'll be taking up writing full time and leaving the tech industry behind.

danaliv 13 hours ago 0 replies      
Constantly. I considered shepherding. (Seriously.) I spent some time on a farm during lambing season, which is busy, and I enjoyed it. But it's incredibly hard work, and you really have to be 100% dedicated to it. Plus I like traveling, and it's extremely difficult to leave a flock for any appreciable amount of time.

I've thought about teaching (programming) too. My dad is a retired professor, and I entertain no delusions of present-day teaching careers being anything like those of his generation. Still, there's something appealing about even just teaching as an adjunct once I no longer really need the money.

rurban 3 hours ago 0 replies      
I did it a couple of times and always came back.

I started as programmer in school, but decided you don't need to study it. It's easier to learn it by your own. Then I became architect, but mostly automated my problems and solutions. After architecture became tiring, without enough pay, I went to more engineering jobs.

Survey, civil engineering, city planning and finally stage design and film.This was all fun and got well paid, but I ended up as director of SW development soon after. After this was not fun anymore I went into hard core engineering, Formula 1 HW/SW simulation and support, but in the end I did more SW development than HW support. HW is always tricky and unreliable. SW is much more logical and reliable, much easier to analyze. And you are not that dependent on others. In SW it's easy to solve everything by yourself on 10x less time than waiting a year for someone else to approve something or until this piece is replaced.

So I went to full time SW work again, even if I still do work a lot on movies also. This is just for fun, helping out, going to festivals and such.

robynsmith 4 hours ago 0 replies      
I'm a huge fan of this essay:

Don't Call Yourself A Programmer, And Other Career Advice | Kalzumeus Software ---> http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pro...

I prefer not to call myself a programmer, although it's a decent way of describing what I do.

I create [value] and solve problems. I used to this by fixing hard datacenter problems as an IT/Ops person, and now I do it as a Full Stack Web Developer. The creating things / solving problems mindset is what is really important to me. Programming is just one interesting "medium" to do this in.

I could see myself creating things and solving problems in other profession. One that I thought heavily about is medicine, law, and writing. I think there are many possible places you can do this in life - it's just a matter of picking a medium you enjoy.

If you need to work on something else, then you can always pick it up as a side project or hobby. I used to find philosophy fascinating. I spent probably a decade of my life reading it as a hobby. Part of me wanted to go back to school or somehow figure out a way to learn it/do it professionally...but I honestly got what I needed out of the hobby. Now I've moved onto other things.


If programming made me miserable, I'd consider getting a second degree in psychology and perhaps doing a ph.d eventually. Or maybe go into management. Or maybe go into medicine. Go with the flow or something.

Unbeliever69 4 hours ago 0 replies      
I came from the complete opposite direction. I actually learned programming in BASIC on an Apple II computer in a community education course at my local middle school back in 1980. Programming was a big part of my life for the next 5-10 years, until I fell into other career and education opportunities. It went something like this...

Drafter --> Teacher --> Education in Industrial Design --> Ux Designer --> Teacher --> Ux Designer --> Programmer.

During this timeline of about 30 years I never stopped programming as a hobby. I HATED the politics of teaching (which I did for nearly 20 years) but it paid the bills. Ux...well, everywhere I designed, I felt expendable and, like education, it was highly political. For many decades I felt like there was a big hole in my life. I wasn't happy. Then...I decided "F it!" and dropped it all to pursue programming as a career. While it hasn't been bliss, I am much happier. I am not inclined to slave away as a hired gun. Programming has been a way to express my ideas in a way that I was never able before. At 47 years old I feel like I'm preparing for a trip to the base camp at Mt. Everest. I figure that by time I hit the summit I'll be ready to retire, but I WILL retire on such a high note. Maybe I'll die on the summit :)

aiokos 6 hours ago 0 replies      
Writing, honestly. I get absorbed into stringing words into entire worlds, complete with flowery descriptions and characters of my choosing. I find that I can write anywhere, be it on laptop or paper, so it affords me more movement than programming.

It's not that I want something more creative than programming, I consider programming to be equal parts art and skill. I want something more flexible, not tied to a company that requires me to work in ways that I don't find productive (looking at you stand ups). However, for now I'll be following the money and writing on the side, although it does get draining to split most of my day's effort into two creative professions.

Jeaye 16 hours ago 1 reply      
I'm slowly working my way toward park ranger, though I've considered paramedic. Wood working also sounds interesting, and I'm great with my hands. Certainly, programming is my passion; having to do it under someone else's terms can spoil the deal though.
iamthepieman 8 hours ago 1 reply      
Teaching. But the money difference is so ridiculous that I would have to go back in time and make every financial decision differently for the past ten years including having less children in order to afford it. Instead I have taken second jobs coaching at a gym, volunteered for hour of code and other programs at my local library and started teaching Sunday school at my church.
clarry 9 hours ago 1 reply      
I've had programming as a lifelong hobby, and in my teens I thought it'd be my profession. But then I realized I don't really care for what the industry is doing, figured I'd have a very hard time finding a software job I'd like.. so I went on to pick up a new skill. I became a machinist. In hindsight, I regret it, because most machining jobs are too simplistic and repetitive to satisfy my intellectual curiosity (simply doing the same thing over and over again fast and making few mistakes matters more) and the good ones are hard to get into. So now I'm looking to get into software, where even the average job will probably suck less for me.

Problem is it's hard to sell myself to an employer with no degree, no job experience, no portfolio of projects done using the fashionable tech that is in high demand (and which I have no personal interest in). At this point I'm at a crossroads, but the best way forward seems to be to start building my own business. Of course, there are plenty of unknown intersections ahead in going that route, and I have no prior experience from running a business, so where I end up is one big question mark.

jitix 5 hours ago 1 reply      
Back home in India I used to work for one of the big IT services company in a support/maintenance project. Due to the bureaucracy, lack of innovation and the general self-righteous attitude at the company I used to think that all software development jobs are like that. I wanted to get out of the entire industry once my two year bonded term was over.

Once I left and ended up joining a small startup, I then realized that all programming jobs aren't like that and working on even enterprise software can be fun. Never looked back.

Delmania 6 hours ago 0 replies      
I think about this a lot. I truly enjoy coding, it's definitely a fun activity. What I don't enjoy the most is the belief that your work experience is secondary. If you can't pass a coding interview, you don't have an active Github account, and you don't blog regularly, some companies won't take a second look at you, even if you have a proven record of success. I personally admire what jwz did, turning his technically skills into something that supported a venue he really enjoys (DNAPizza and DNALounge).
stevekemp 13 hours ago 2 replies      
In moments of madness I've considered both locksmithing and plumbing. Both are jobs that cannot be outsourced, and which SEO can be useful for.

That said I'm a sysadmin rather than a programmer, and I have no immediate plans to change.

One thing I would not do is become a photographer; that's my hobby (well that and rock-climbing / gyming), and I've seen too many people be burned by trying to become professionals. I charge money to shoot old ladies, hookers, and pets. But having to make a living from it would change how I viewed the subject and not in a good way.

ohgh1ieD 2 hours ago 0 replies      
Actually yes, every day, I'm counting the days till med school.

I'll probably write code as long as I am alive but not under those conditions, not CRUD apps, not to make someone else rich.

I'd actually say that there are only 4 reasons to write code:

- To learn

- Temporary ( cash )

- To create something which becomes eventually a company

- To solve your own problems

Obv. I don't want to attack someone, that's just how I think about it.

When I entered SE I already knew that I'm not going to do that for a long time, it's on my list, I had to learn it. It's time for the next topic.

gnclmorais 12 hours ago 2 replies      
Every day. Im a bit jealous of all my friends with professions that dont require any of their free time. They can have all kinds of hobbies and spend their free time doing whatever they want.
santaclaus 17 hours ago 2 replies      
Mechanical Engineering -- I work through a different mechanics textbook once a year, or so, for fun. I think I enjoy the theory of how the physical world works more than the practice, which keeps me where I am. :)
skykooler 17 hours ago 1 reply      
I'd like to do something that does not involve looking at screens all the time. As it is, I'm stuck with my one skill that's highly valued until I can finish paying off my loans.
epynonymous 2 hours ago 0 replies      
i did actually leave programming (almost 10 years ago) for a job as a people manager (of programmers/test). it's a lot more fun to write code as opposed to dealing with all the nuances of personalities, politics, processes, etc. i do have a few side projects which have allowed me to stay as a pretty effective coder, but at the end of the day, i'm also doing a lot of non-development things on my side project like go to market definition, managing people, project management, and slideware.

there are definitely very tedious things that programmers have to deal with like unmarshalling and marshalling data across backend to frontend components or test automation (think of having a multi-tier system with ios app, database, email service for forgotten password and having to automate all of that). but at the end of the day, the thing i like most about programming is the ability to see the things i create doing something useful. seeing the end result that's of high quality gives me a sense of pride. i'm definitely a maker, it's what i was born to do. but at the end of the day it's about risk/reward and opportunity cost, at this point there's just too much to give up, and the side project isnt panning out yet.

on a slight tangent, i have an electrical/computer engineering background and was supposed to go into hardware like most of my classmates, but i ended up liking the fact that i had something tangible after hours of programming, even though it was virtual, and with hardware i'd have nothing to show for it, but a pic controller lighting up some led's, a breadboard with a bunch of mixed logic implementing some simple thing, or some vhdl state machine that effectively did something simple. no offense to all the engineers working on this type of thing, but it just wasnt as exciting to me.

i find that there's some balance to it all, like getting paid well, but also having hobbies on the side that you can soak yourself into. but then again, i've heard many a story about people doing what they love and for lots of money.

dotdi 12 hours ago 0 replies      
I am in a similar position as david927, working in a good environment, good colleagues, good pay.

I actually have a degree in molecular biology and have transitioned to computer science and an engineering degree, which I think was the right choice for me. I thoroughly enjoy being an engineer but lately I can't help but being drawn towards the arts - music in my case. I have been eye-balling a music academy that offers a state accredited professional guitar degree. According to their information material, their alums are quite sought after because of the hands-on approach, studio skills, etc. I looked at the requirements for admission and I am pretty sure I can get admitted with some preparation, having played on and off for quite a few years now.

The catch here is that music industry is actual shit to work in, as I have heard on multiple occasions. And I cannot afford making less than a certain amount of $$ because I have to/want to provide for my wife and two kids.

On the other hand I started having the (completely irrational) fear of being a complete failure if I don't become a professional guitarist.

subinsebastien 14 hours ago 0 replies      
I have been mostly happy with programming in my early days. Im now 28 years old, and been a programmer for the past 5 years. I mostly code Android apps, and sometimes server side code in Node/ExpressJS. For the past 1-2 years, I really want to change my career into more unique/niche fields of engineering. Programming, as I see it now, does not need a computer science degree or any degree at all, to do effectively. And people from other domains are getting into programming, and doing it a lot better than I do. I considered getting trained in Industrial Automation (PLC/SCADA/LABVIEW) and get into more mission critical domains, where I can work with lot of other Engineering domains as well. Another option I consider is to go for a masters in a niche engineering field. But as I analysed my thoughts, what I really (really) want is a unique engineering job, where the entry barrier for others is high. I don't have any idea if I could be a success in the new field. To conclude.

 - Programming is boring after a number of years - Programming is more of an art-form rather than engineering - Entry barrier for programming is low, so you dont have to be an engineer to do programming - Your programming skills plateau after a certain age - Your engineering mindset will be lost if continued in certain type of programming jobs.

nathanvanfleet 7 hours ago 0 replies      
I always wanted to make films. Probably specifically small documentaries about people and sub cultures. But I never really saw that as a profession or much of an option. And ultimately I never really put a tonne of effort into it. I had talked to a few people who I thought were interesting subjects, but they backed out and I realized I didn't have the skills to try and rope them in and get them to do it (in a nice way). Maybe it's just because I don't have very many friends in that field that would support me.

On top of that I think I'd like to own a cafe or roast coffee or something.

But ultimately I got into development work because I was so motivated that the time it took to build experience on my own came easy. And doing the work day in and day out comes _pretty_ easy as well.

Though of course sometimes your interest wanes a little. But I know that it's a lot more satisfying than any job I've ever had. And I haven't thought much about others that I hear about.

In addition to that I just honestly don't think I'd make as much money anywhere else. So as long as I'm into it and it's the best place to make money, I don't see why I wouldn't keep at it.

I just hope I can try to do my other interests in my off time, which over time has become a lot harder than it felt previously.

mindcrime 17 hours ago 2 replies      
A few years ago, I briefly considered going back to school, getting a degree in Exercise & Sports Science, and getting into athletic training. But in the end, I could never quite convince myself to do it, and the moment passed. I also flirted with the idea of becoming a private detective a couple of times in my life. I actually still find that idea somewhat interesting, but I doubt I'd ever make the money doing that, that I make in software. And here in NC the training requirements to become licensed are somewhat onerous, so I doubt I'll ever pursue it.
no_protocol 17 hours ago 0 replies      
Anything involving pragmatic problem solving. Keep the mind occupied with varied tasks and satisfied by frequently delivering solutions. Skip the intricacies and subtleties of dealing with software.

There are so many people performing repetitive tasks who could benefit greatly from relatively small optimizations. I would be able to directly witness the impact of my work and make a difference on a personal level. It's hard to do this in software because the landscape changes so quickly.

It would also be super fun to practice apprentice-style learning in multiple fields and document/share everything.

galfarragem 4 hours ago 0 replies      
Enjoying doing something as an hobby is completely different than enjoying it as a career.

What people like is the 'creative part' associated with a skill. When you do something as a career, most of your time will be used dealing with the 'boring part'.

wanda 15 hours ago 1 reply      
I love programming. Even if I still had to use Perl I still wouldn't give it up.

Admittedly that's because I like Perl, but I also freely admit I'm more productive with full-stack JavaScript.

That said, I wouldn't mind writing about programming, but I can't afford to stop my day job.

I'd love to write an ebook on JavaScript, a spiritual successor to Marijn Haverbeke's Eloquent JavaScript but using ES6/ES7.

Maybe also a book effectively about making your own JavaScript framework beginning as a way to build a simple website or MVP without jumping on a framework bandwagon. The book would later develop into a cautionary tale, warning against reinventing existing frameworks like Angular or Ember. All culminating in a sober recommendation to choose vanilla JavaScript and direct DOM manipulation for simple websites and MVPs; later upgrading to React and Redux for a large-scale, client-side applications, esp. if a team is involved.

I'd also like to write an ebook about CSS and how to use it effectively not as in "pure CSS solution to problem x which is actually in JavaScript's domain" rather "CSS doesn't work like that, it works like this, see?"

Maybe also a series of primers: CORS, React, ES6, CSS, 60fps animation/UI on the web, web accessibility...

tixocloud 6 hours ago 0 replies      
I started off as a software engineer for 2 years but began to explore the business side of things. I moved into designing/building systems for business analysis (i.e. data warehousing, reporting, analytics, etc.), did strategy consulting for insurance and financial services as well as studied for my MBA. I'm now in charge of leading the analytics initiatives for our credit card business.

I'm still in touch with my programming side through my side projects but the experience I gained through my software development years have been extremely helpful both in dealing with business & technical audiences as well as in solving problems logically.

The main point is that the programming skills you've learned can be useful in another setting. Starting off as a programmer doesn't mean that you will have to do it for the rest of your life. You have many different choices and it's up to you to shape your career the way you want it.

uniclaude 17 hours ago 1 reply      
I believe a lot of us here on HN would consider leaving programming for doing business. A lot (including myself) already did.

Programming being very often about solving business needs, sometime in your career, you might be in a position to realize that it could make sense to go higher up the chain and build a company.

ninjaroar 9 hours ago 1 reply      
Yes. My goal is to reach $10 million net worth (so I am no longer dependant on income to survive - yes, I can live more cheaply, but my favorite cities happen to be the most expensive).

Then, I would retire from the industry and focus on doing computer generated art and sculpture.

That would let me stay in software, but let me be creative (I don't want 'creatives' to design thing, as if they were a different species - I'm creative myself!). No scrums (aka micromanagement), no testing, no bureaucratic processes or anything like that - I would just spend all my time creating.

lucaspiller 13 hours ago 0 replies      
I like programming, but I don't really feel satisfied working as a programmer. While in college I worked in a supermarket, I found that a lot more satisfying that what I do now - I don't really know why, but I think I just like dealing with people (although I'm quite an introvert, I can do it if my job requires).

As others have said programming is probably the lesser of all evils compared to other jobs though. I don't think there is any other profession where I could so easily get paid as much as I do, and work from pretty much anywhere on the planet.

My mid-term goal is financial independence. I'm 28 and should achieve that in the next few years (I'll probably take short-term contracts and then a big break between rather than quitting completely). I don't really have any other hobbies, so I'm not sure what I'll do then though. I wouldn't mind going back to university to study physics.

jimcsharp 7 hours ago 0 replies      
Every day of my working life. I am not sure that's not just my depression talking though - maybe I won't be happy in any job.
dadro 6 hours ago 1 reply      
I bought a small commercial fishing boat and occasionally do that on the side. I make no money but love every minute of it. I'm working on getting my charter license so I can take folks out fishing and hope to do that p/t when I retire in 20 years.
kidmenot 7 hours ago 0 replies      
I thought about it so many times I lost count.

My dream is writing for a living, and I'm currently writing the first draft of a novel. I'm about 1/5 of the way there, began a couple of weeks ago. I've tried a few other times, but couldn't get past the first few chapters. I'm now at 18k words and going strong, I hope this will be the one.

biztos 12 hours ago 0 replies      
I enjoy programming, and I count myself lucky to have a good, well-paying job in an industry that is unlikely to run out of work for the likes of me.

However, I originally set out to become a visual artist. While I doubt I'd be able to pull that off as a career now, I would still much prefer to be doing something in that world rather than instructing machines for the Man. I often think about "transitioning" but so far I haven't found a path (you pretty much have to self-finance), and remain an "artist with a day career."

If anybody is seriously thinking about another profession, and is under 30, I strongly encourage you to give it a shot. It gets exponentially harder once you pass 40.

skypanther 7 hours ago 0 replies      
I almost did. I earned my black belt in karate and was teaching a few classes per week. I had frequent conversations with my sensei about working full time for him or starting a dojo of my own. We had a location picked out and everything.

Martial arts can be incredibly fulfilling. I got to help people improve their physical and mental fitness, gain confidence, overcome anxieties and fears. There were constant opportunities for fun, new friendships, and doing good in the community. Plus it was really cool knowing I could do some of those Bruce Lee / Chuck Norris moves I'd see in the movies.

At the time, I was the sole income for our family (wife & 3 kids). The income possibilities were just not there. We could not have made it work financially. Now, I'm an old out of shape desk jockey.

magpiefabric 7 hours ago 0 replies      
The thought flashes by every now and then. I haven't been doing this for very long (~2 years professionally) but I've already started to see little glimpses of burnout on the horizon and plan on working in a proper break from work at some point.

I can't say for definite what I'd do. Music's always been a side passion and I'm attracted to the idea of getting back into music production. I studied it briefly back in college (UK, so I guess high school?) but I don't think my heart was really in anything back then so I let it slip through my fingers. For some reason I also sometimes get these day dreams of working in a market food stand. I can't see how i'd enjoy it considering how disdainful I was of my youth working in retail, but cooking is another little passion of mine so maybe i'd dig it, even if it felt a bit like an step down.

wkoszek 12 hours ago 3 replies      
It's interesting how many of you guys have other interests, but stick to programming since it solves a paycheck problem.
j1vms 5 hours ago 0 replies      
Want to know really the only thing all of us have in common today? We're all alive. Think about it. Tomorrow for at least one or more of us, that may not be the case.

Despite many great comments from those in the profession or not, go with your gut instinct. When you get to the point where you are thinking of leaving what you do for something else, it doesn't matter whether or not other people got to the same point.

Trust your gut and go with it. Usually, it knows what's best for you.

gressquel 7 hours ago 1 reply      
Yes, Yes and yes!I consider myself a quicklearner. I am 28, been working as .NET consultant but know the other languages such as javascript/node, php, swift, java. Paid well, but I cant help feeling like I was meant to do something else. I wish I could use my brain capacity to help other people. UNICEF, UN or other NGO. I believe technology can have massive impact on countries which lags behind the "western" standards. I wish I could be part of a program to help out people with the use of technology.This feeling is so intense, I wouldnt be surprised if I quit my job tomorrow. I am not scared of leaving my country (Norway) if there was a great opportunity to work abroad.

Dont really know where to start when it comes to tech + UN. If someone knows please give me a pointer to start.

nstr007 7 hours ago 2 replies      
I love programming, I feel I can express my self threw code. However, I wish my wife and others could appreciate what I do like I do. If I could do it again, I think I'd like to be a carpenter or something that can be appreciated in the physical world.
JshWright 17 hours ago 0 replies      
I'm a part-time paramedic. I'd go full time in a heartbeat if it paid well enough to feed my family...
skoczymroczny 5 hours ago 0 replies      
Not really. For me programming isn't something I do for money, but something I like to do, which just happens to make good money. I do semi-boring stuff for money, but do fun stuff (game development) at home. I don't see myself burning out any time soon and looking for something else. Also programming fits my personality type, allowing me to avoid too much contact with people :)
niclupien 16 hours ago 0 replies      
First time I quit programming, burned out, went working on a friend's farm. After some times, I felt much more valuable helping them with computers/website/payment processing problems. Didn't took long, I was back in programming.

Second time, I took some time to execute on a non profit to help our local community. Being good with data really help organizing event people really liked so I tried to spin that into a startup and failed. Like other commenters said, I was doing stuff I didn't really like.

I'm back to programming but I'm really glad I tried different things. Not everything was a failure, I eat fresh organic food from my friend's farm and I have an impact on my local community.

pryelluw 7 hours ago 0 replies      
Not really. I use programming as a tool not as an end goal. I enjoy programming because it gives me the ability to do things I otherwise could not. I also like the deep technical side of it but there isn't much to do there for me.
FullMtlAlcoholc 8 hours ago 0 replies      
I absolutely want to be done with coding by the age of 40. Coding is a young man's game. It'll always be a passion and hobby of mine, but it wouldn't fulfill me to still be primarily writing code for someone else's company.

I was an athlete in a former life that allowed himself to get woefully out of shape. I went on a health kick a couple of years ago, got into better shape than I was in college. Now I do personal training on the side, just finished my first triathlon, and am now training to compete in American Ninja Warrior. I really wish American Gladiators was still around though as I would've much rather preferred that.

baccheion 13 hours ago 1 reply      
Not really, but it could easily be the case that most programming jobs suck. That is, it was clear to me from a young age that programming was my favorite thing to do, but the mundane, backward, pointless, political, and/or stupid nature of most jobs can make things unbearable.

My solution was to eventually either become a consultant/freelancer, or create my own startup. When I then realized that a tech lead (Staff Software Engineer) spends about as much time doing manager-related tasks as they do developing software, and that a Senior Staff Software Engineer or Principal Engineer is essentially a manager (almost no coding), I knew my days dealing with corporate world BS were numbered.

My plan didn't really fall into place, as I became a Targeted Individual (likely at the hand of one of the idiots managers I had to deal with) 2-3 years after graduating from college. That BS left me sitting in this room for the last 5-6 years being harassed all day long.

After a few years of the torture, I was pretty much done working, as I was now unemployed for too long a period of time, my intelligence and reasoning ability were waning away, and the harassing/intrusive thoughts were still present and were still getting in the way.

mgarfias 17 hours ago 0 replies      
If I could earn what I do building things with my hands, I would doIt in a heartbeat
Beltiras 9 hours ago 0 replies      
I can't imagine myself wanting to leave. We are defining the worlde for everyone else. The amount of power over the course of human affairs is staggering when you think about it. A fullstack can be toiling away on some CSS layout problem today and come up with a better design of some widget or other which leads to a breakthrough in UI/UX approach. Several months later nobody is using webpages in the same way. A novice can innovate things that an old hand would not think of and turn the whole world on it's side. The reach and breadth of computing makes it too exciting to forgo.
exabrial 6 hours ago 0 replies      
Quite often! But it pays well and my co-workers aren't terrible. Most efficient way to have job security and make a good bit of $.

Id always be inventing -something- though, recently I got into designing and building high voltage distortion prone vacuum tube hybrid solid-state instrument signal drivers: aka guitar amplifiers :) analog electronics is a lost art!

iends 17 hours ago 3 replies      
I think about law school or an MBA at least once a week.

The opportunity cost is extremely high though. It's pretty hard leaving six figures of income in a low cost of living (and the grass is always greener I'm sure).

bbarn 15 hours ago 1 reply      
Like some dozen others here, if it weren't for the money.. sure, I'd run a bike shop, with a frame building shop in the back room.

As careers go though, what we do is interesting, ever changing, and an exercise in learning almost every day. Oh, and the pay kicks ass. So, yeah, I've thought it. Lots of us think it all the time, but really, we've got a great job, so while the grass may be greener over there, it's pretty green here too.

porker 11 hours ago 0 replies      
I did [0], but after that I reassessed, relaxed, decided not to push so hard... and raised my rates.

It's a job, and like any job it sucks (hugely) at times. It also provides money to keep my family, and I get to work on interesting, brain-teasing problems (sometimes! Damn web development).

Frankly, I'm not good at thinking what I'd do until I'm doing it. If I did something else it'd be one of:

 Research scientist University lecturer R&D Psychologist Photographer
I already had the option of a career as a photographer (back before the market tanked, which I saw coming) and classical musician. I'm (mostly) glad I chose neither.

0. https://news.ycombinator.com/item?id=10169937

drvdevd 4 hours ago 0 replies      
I often fantasize about leaving programming for ... programming. It's amazing the sheer number of things that aren't programming a job in programming might entail (depending on where you end up).
pinouchon 9 hours ago 1 reply      
Computational cognitive science.

I'm in the process of going back to studying. My employer knows this, as well as most my friends and peers. I plan to spend the next two scholar years (starting in 2017) to take a master in cognitive science. I have worked for 3 years in web development since graduating and have enough money stashed to make the transition.

I'll likely write a lot less code, and more maths and english.

My primary motivation is that I believe that breakthroughs in AI and cognitive science at the computational Marr's level are going to have a huge impact, and I want to be a part of it.

JeanSebTr 16 hours ago 0 replies      
I did not stop programming but I got a dramatically different job of what I had before. You didn't say why you're curious for that question, that might be like me simply for the need to change.

Even with a gratifying job full of technical challenges, I feared I was becoming a 9to5 zombie. So, I got a new job a few weeks ago. I joined a non profit offering free WiFi in the city as the one man army tech guy. Instead of just software/web/mobile development, I also have kind of managerial type of responsibility and more public relation to do. It's something like a safe steady job with nearly startup mindset.

There's still a bit of programming involved, but it's so different from what I know that it's a real professional challenge. And for that I had to accept a big salary downgrade.

It really depends on what's your motivation. Is it salary, challenges that go in pair with your personal growth or simply working in a different context / mindset?

That may be the tasks you do that aren't fulfilling? For some people, manual work is really gratifying. Last week I was setting new cables in a patch panel; there's nothing challenging about it but it's simple and you can be proud of a cleanly done job.

manyxcxi 17 hours ago 0 replies      
If I could make a much money as I do now, I still don't think I'd choose something else. If I did it would probably be, in order:

- Robotics (more on the hardware side)

- Woodworking

- Custom motorcycle/classic car building and restoration

The common theme for me is the creative problem solving, building things in general, and attention to detail/craftsmanship specifically that maintain my attention. As it is those are all hobbies of mine, so I still get to dabble while making a good living doing another thing I really love.

brighteyes 17 hours ago 2 replies      
If I could make a good living off my music, I'd seriously consider it. But that's unlikely.
bebop 4 hours ago 0 replies      
I have always wanted to become a full time wookworker. The problem has mostly been the fact that programming pays much better, especially if I were to start as an apprentice.
biztos 11 hours ago 1 reply      
So nobody's interested in sales?

It's a job that solves a lot of the problems people complain about in programming, like spending all day staring at the screen or not interacting with people or doing things that might be pointless.

The downside of course is that you eat what you kill.

fastcars 6 hours ago 2 replies      
I hate programming as a job. Spending all day sitting at a computer with little human interaction outside of the person next to me and having to concentrate for hours on hard problems is really bad for my mental health. Most programmers seem to either burn out, or spend their day trying to avoid programming by going to meetings and so on.

There is also an extreme amount of micromanagement at my current job. I just get very specific issues and then resolve them. There is no autonomy. The project manager just sees me as a typewriter for his novel.

Jobs where I have been physically active and interacted with a bunch of different people that I don't work with have been much better in terms of my mental and physical health.

I am thinking of dropping down to part-time as I could manage 4 hours per day of programming, and maybe getting a physical job as the other 4 hours.

20years 16 hours ago 0 replies      
Yes and did to some degree when I left a captive software dev position and started my own business. Still involves lots of programming but mixed with a ton of other things.

I sometimes day dream though about doing something outside of software such as landscaping or remodeling houses. Something I can do away from the screen & keyboard. Something that still involves creating and being able to see the end results of your creation.

rmathew 7 hours ago 2 replies      
Jamie Zawinski[0] gave up professional programming[1] to manage a lounge[2].

0. https://en.wikipedia.org/wiki/Jamie_Zawinski

1. www.jwz.org/gruntle/nomo.html

2. www.dnalounge.com/backstage/log/1998-1999.html

Edit: jwz hates HN; made the links non-clickable. Thanks @Jtsummers.

Archenoth 12 hours ago 0 replies      
I love programming, though I have thought that if it didn't exist--I would probably go into archaeology.

I have always enjoyed discovering things in subtleties, and learning the reasons behind strange things with research. There are still plenty of things that we have yet to figure out.

However, regardless of whether I did archaeology or programming, I'm sure I would get burnt out every once in a while. That just happens, and it isn't necessarily a bad thing. (Even if it is annoying...) It helps me to remember that this sort of thing passes as my inspiration swings back and forth, and that I don't actually dislike my profession. And until I am back into it, I just do things to force myself to be productive.

mellett68 13 hours ago 1 reply      
I think about it often, but I assume it's some kind of burnout. None of my hobbies would translate into even my current pay level.

There's that nagging idea of the 'real programmer' who is getting paid big money to solve interesting problems. Almost certainly a myth but still a frustrating idea.

danso 16 hours ago 0 replies      
I went into college for computer engineering but immediately double-majored in journalism (my first love in school) and didn't even bother looking for an engineering job after graduation (though I did fail a Microsoft interview).

Today I do both but I'm extremely thankful I stuck with programming. Not just as a useful job skill but as a different, powerful way to see the world.

benjismith 15 hours ago 0 replies      
I always wanted to be a full-time fiction author.

Eventually, a few years ago, I started a company to make software for fiction authors.

Best of both worlds!

ohstopitu 9 hours ago 0 replies      
One day....when I have enough to live comfortably, I want to get into gaming (Youtube and Twitch or whatever is the main medium for games then).

I LOVE gaming (and transferring my skills learnt from programming & the startup world to the gaming/streaming world).

Apart from that...I've wanted to try and be an investor/trader but I don't know if it's really something I'd get into given the commitment & resources they require.

rifung 15 hours ago 0 replies      
Yes and I still do. Nowadays I mainly just want to do research in Math/Theoretical Computer Science, but before I also considered becoming a chef or piano teacher.

I should have realized it back then but I enjoyed CS in college much more than software engineering in industry and I miss the difficulty and rigor of the problems.

keithnz 15 hours ago 0 replies      
my thoughts of other work are often fanciful, I keep thinking cancer cures are taking too long and I'm sure my debugging experience would sort that field out. Nuclear Fusion power reactors are taking far too long to sort out, and I'd kind of like to get stuck into that problem.

Then I sometimes wish I was a full time philosopher.

Other times when I've moved between countries and thought I'd take a break from programming to refresh myself.... I end up thinking about ideas around coding and end up coding anyways. So I think I'm a lifer. Not quite sure what role I'll take if there is a zombie apocalypse though, however I have played through a lot of computer simulations of such events and I seem to be a kick ass warrior

... as I said, fanciful ideas of other jobs :)

parr0t 11 hours ago 0 replies      
I've only been programming professionally for a year but can't see myself wanting to get out of it anytime soon, maybe ask me in 10 years to see if that view changes. But at the moment am thoroughly enjoying learning as much as I can - coming from a job I didn't enjoy as a full time baker to having my weekends back, normal social hours and just having more spring in my step by doing something I have a genuine passion for is a great feeling.
michakirschbaum 11 hours ago 0 replies      
I became a programmer to avoid being pigeon holed professionally. Programming has strengthened my critical thinking ability for other creative endeavors, and I could leave for actual engineering (e.g. electrical), applied mathematics, music, art, design, entrepreneurship.. basically I chose programming to leave the door open for any of these activities. I feel that this isn't a flexibility as easily afforded to say, physicians or lawyers.
herbst 14 hours ago 0 replies      
Yes. But honestly most jobs i think are interesting too would get boring pretty fast and are badly paid in comparison.

The only reason i even thought about that is to have more joy in programking after work.

I fixed it by quitting my job and going digital nomad.

dver23 17 hours ago 1 reply      
I took a year off in my 20's for spiritual pursuits and volunteer work. Best thing I ever did, it wasn't well planned and on a shoestring. If I could do over I would have done the finances differently. I cam back to software, but with a much different outlook and world view.
uptown 6 hours ago 0 replies      
It was some of the motivation behind this post:


stepvhen 7 hours ago 0 replies      
I got my undergrad in CS and am now pursuing pure math in grad school. Not exactly what you asked, but the time i did spend in the industry was enough to make me want to do something other than programming for money.
keviv 13 hours ago 0 replies      
Yep. I was working in a startup (which eventually went public) for close to 6 years. Life became monotonous there and I really felt burnt out. I finally decided to quit and wanted to do anything but programming. 2 week later, I started missing programming again but this time I decided to freelance. I'm getting paid decently while I can do a lot in my free time. I've started reading books and working on small side-projects which I wasn't able to while working full-time
mikelyons 11 hours ago 0 replies      
After nearly 10 years as a web developer I've left the field and moved to south east asia to be a SCUBA diving instructor. Nice change of pace.
wheaties 17 hours ago 2 replies      
In general, when those thoughts crossed my mind it was when I was working a job I should have left already. There are good companies that value developers and/or give them a reasonably good balanced work environment. Generally the two go hand in hand. For places that don't, frustrations and poor practices tend to push us into less fulfilling lifestyles.

But if pressed... Corporate pilot comes to mind. I've spend I don't know how much money on training and aircraft rental. Most piloting jobs for corporate clients have you working only 2 weeks out of the month. That is, you only fly about ~250hr a year. The rest of the time can be spent hacking or doing whatever else you'd like to do.

vbezhenar 11 hours ago 0 replies      
I fell in love with programming, when I was about 13, and I love it now (29). Commercial programming (e.g. what I'm paid for) is rarely fun for me, but not bad either. And I have a lot of fun doing programming as my hobby, some experiments, etc, when I'm not constrained with anything. I don't think I would ever change my profession.
emodendroket 9 hours ago 0 replies      
My original plan out of school was to become a Japanese translator and I still enjoy Japanese-language stuff. But honestly I couldn't deal with the vicissitudes of being a freelance translator while at the same time never making much money. I enjoy this too and it's much more stable.
baybreeze 16 hours ago 2 replies      
For 10 years programming has been my thing, but for a while now I have been getting the feeling that programming won't be big in 30 years. If all my eggs are in the programming basket and I can't keep a programming job in the future, I would be out of luck. (presumably because it's a blue collar profession by that point).

With that fear in mind, becoming a M.D. actually seems like it would be a good decision. Even this late in the process, doctors have been well paid and relatively rare for thousands of years; a tried and true profession. Plus it will sate my curiosity about the function of the human body.

inopinatus 11 hours ago 0 replies      
I left it for ops and then management and then went back to development.

Cycle normally repeats every few years.

Currently doing all three at once because startup.

gmac 11 hours ago 0 replies      
I thought I was leaving programming when I went back to school to do a Masters and then a PhD in environmental economics. I'm now a lecturer (assistant professor) ... but programming is so useful in academia, and such a rare skill, that I hardly do any less now than I did before. And I'm OK with that. :)
tluyben2 15 hours ago 0 replies      
Tried retiring. Opened a brewery (beer & cider) and going to run a bar/restaurant; brewery runs well but I just like programming too much. Combining them works well and keeps me fit.
SeriousM 14 hours ago 0 replies      
Yep, going to be a police officer. But I would get a lot less money and very bad work schedule / vacation policies. So I stay with developing awesome software.
pragone 9 hours ago 0 replies      
Did. Currently in medical school.
asteli 15 hours ago 2 replies      
I'm an electrical engineer via a nontraditional path. Like software dev, it still involves large swaths of time spent staring at screens while inside a box.

I've been mulling over the possibility of some kind of work that would be more conducive to my long term sanity. My imagination has me developing and deploying instrumentation for environmental science. 1/3rd screen time 1/3rd workshop, 1/3rd fielding instruments.

I'll figure something out. Probably when 12 hours of daily screentime becomes unbearable.

yoyobird 5 hours ago 0 replies      
I think automation will replace the need for SEs. Sites like weebly, jeenka, snapmobl eliminate the need for a programmer if you want to build your own website. If I were a programmer, I would start thinking about exit paths within the next 10 years
AUmrysh 9 hours ago 1 reply      
I left programming to get into application security, and I love it. There is still some programming and a lot of reading code, but it's a million times more enjoyable than writing endless REST APIs for me.
jmunsch 11 hours ago 0 replies      
fwiw, I graduated with a degree in painting. Got into an ecommerce shop. Figured out how to automate my position. And felt a big draw to programming. Went back to school via a bootcamp and have been a "developer" for the last two years. Mostly CRUD but recently ML and the tools to shuffle data around to input into the ML. I have been in a slump lately, decided to pick up doing part time bicycle messenger/delivery work on the weekends and for an hour or two after a few times a week. There is something satisfying peddling items around the city for people. Tangible and visceral with immediate feedback. I've found it helpful, it has rebalanced my priorities in a sense. Being out in the world, as opposed to continuosly being in an abstract space all the time.
o2l 15 hours ago 0 replies      
I pretty much enjoy programming most of the time. But there are times when I feel, only if I could take a small break and do something else without worrying about money.

I would like to

- Work at a General Store- Be involved in a full movie / tv series making process ( Because movies have always had a deep impact on me, and I would love to contribute my ideas in that domain )- Invent new food recipes- Research on Ancient History

aethertron 7 hours ago 0 replies      
Academic computer science or mathematics. Or writing (about technology, videogames, and humans). These are stuff I do as hobbies now.
yitchelle 11 hours ago 0 replies      
I left programming to do ProjMan work so that I have more time doing my main project of giving my family the best life possible.

I found that SW engineering is too taxing on my time at my stage of my life. My wife and I are mid 40s and the kids are growing fast.

du_bing 17 hours ago 0 replies      
NEVER, programming is best work ever, giving me much freedom.
_mikelcelestial 16 hours ago 0 replies      
I did this just recently. Before I went to a middle east country for an SEO job, I am a PHP dev for 7 yrs and my last work made me realize that I'm not growing or something and this new environment would make me do this change. Unfortunately, after working for only a few months, I was sent home due to health reasons and dev jobs are hunting me again which I think because of my qualifications in the past.
Radeo 12 hours ago 0 replies      
After master and 3 years experience I was a trader in a prop firm for one year. And this was...

Best experience in my life, I have learned a lot about myself and that world outside pure IT can be even more astonishing and challenging. Psychological leap I would say, advancing to new level. Despite my friends who couldn't understand with I sacrificed my top salary (yeah, I had it best among my programming friends).

Though I failed (yeah, can admit that proudly, because I tried) and I am back in my profession, with even higher salary then before 1-year challenge I got much better perspective now. I try to widen my horizons more often and in different ways. Oh, and after few months break aiming to jump back into trading on my own account... Real fighters never surrender, right?

wingerlang 12 hours ago 0 replies      
The thought has crossed my mind, but only in the line of "What would I do?" to which I have no answer.

I also love programming (since maybe 12/13 year old me read HTML books and Flash actionscript to make games) and I don't really want to do anything else anyway.

Giosk 9 hours ago 0 replies      
Everyday I think about leaving my job, but then I figure out that the problem isn't being a programmer, but working for customers that have no idea of what they want.
wineisfine 15 hours ago 0 replies      
Yeah I wonder what our dev skills be worth when we are 60. And still need some years do get to a pension. And meanwhile you have 21 year olds without a mortgage, kids or wife... with all the time in the world to work and learn new things.

Take for example current js webdev, with a new hot tech every week.

We can't all become IT managers (nor want to)...

iopq 15 hours ago 1 reply      
I recently started playing a game that I haven't played in a long time. I miss the feeling of being engaged like this. Programming just doesn't do it for me.

I want to love what I'm doing, but unfortunately there's few things that tickle my brain like this. What should I do, take ADHD meds and go to work, like everyone else?

BWStearns 17 hours ago 0 replies      
Law has always interested me. Unfortunately the cover charge is such that I would only be willing to give it a go in the event of an equity lottery win or something similar.

Another thing I've been toying with is prop trading. It's not entirely separate from programming, but the industry is pretty isolated in terms of expertise so it might be considered separate.

nickelbagz 15 hours ago 0 replies      
If I had the money I'd stop being a coder, but still use a computer for music composition and production. I'd play the piano and also write about social/political/historical things. I had this luxury once a while ago, and am now working hard again to get back there!
raverbashing 9 hours ago 0 replies      

And in a way, leaving lower-level programming for the sake of it and focusing on nicer things more connected with the end user kind of feels like it

SticksAndBreaks 9 hours ago 0 replies      
I actually thought about going into the alps mountains shepherding cows on a Alm. Its peacefull and less lonly then programming.
BucketSort 16 hours ago 2 replies      
Yes, mathematics. After studying computer science problems for a while I fell in love with math.
mataug 17 hours ago 1 reply      
I've considered it a couple of times. Being a chef or someone researching climate change are the two things that I've considered. I have no background in either (I can cook up a decent meal but nothing impressive) and the thought of having to start from scratch bothers me a lot.
d1ffuz0r 17 hours ago 0 replies      
Park Ranger in Alaska or Siberia. Will probably be enjoying more than my current engineering career
telesilla 17 hours ago 0 replies      
I've been working for almost 2 decades and have recently rearranged life to study part-time. A combination of luck and good timing let it happen. It's done wonderful things for me in all aspects of my life, professionally and personally, and is opening new doors.
sanatgersappa 17 hours ago 1 reply      
Yup. Trading futures.
adultSwim 7 hours ago 0 replies      
Teacher (community college / high school)TherapistCommercial plant nursery
Jach 11 hours ago 0 replies      
Shoveling pig shit.

The only other alternative I've considered is to teach English in foreign lands, but I'd probably still do programming on the side.

jtms 16 hours ago 0 replies      
I have been a professional dev for 12 years but have often considered other paths. Just a few: Placer gold miner (yep, like the TV shows), Brazilian Jiu Jitsu instructor, metal sculptor, mechanical engineer
amirbehzad 12 hours ago 0 replies      
I always wanted to be "the Nose", the professional that smells perfumes for a living. I have the talent, and high-end equipment for that.
reitanqild 15 hours ago 0 replies      
I actually have worked as a more or less pure system engineer for three years.

It was interesting and a bit painful to not have access to source code and to be completely dependent on a slow process.

snuxoll 17 hours ago 0 replies      
If it didn't require such a huge time commitment I'd consider becoming a PA or MD, but once you already have a family and bills it's practically impossible to get through the required schooling.
Aitizazk 14 hours ago 1 reply      
Well the next best thing for me would be teaching programming. still couldnt forget the awesome feeling when I made a calculator in a cs101 course :D
cottonseed 17 hours ago 2 replies      
I left to get a PhD in math. Now I'm back, sort of.
JoshMnem 17 hours ago 0 replies      
I haven't thought about it yet. If I ever do something else, it would probably be another application of programming, like math or data science.
theparanoid 12 hours ago 0 replies      
Physician Assistant. It pays well and doesn't have the youth skew of programming.
Lawstudent004 6 hours ago 0 replies      
I'm 25, I finished my bachelor of laws last year (started in 2010) and I'm doing my master of laws atm (it's a 5 year programme where I live, bachelor is 3 years, master is 2). I've always wanted to do something in IT and lately Infosec has really started interesting me.

Last year I took up some programming classes (java) and I actually liked it, however I kept convincing myself that despite that, I was going to finish law school. Mainly to keep my job prospects open, maybe even get a management position in an IT firm faster that way. But honestly, aside from the pragmatic things that law teaches you, it sucks. It really does. Everyone I know either aspires to pick up notary or fiscal law, just so they could satisfy their own prospects of a well paid, highly regarded profession. It's a fairly depressing field to study and to work in.

I did a summer internship during summer vacation this year at a fairly prestigious firm. I hated that job, it consisted of looking up the latest jurisprudence about i.e. 'higher power', it made me read law books that were too boring to even want to comprehenend. I read an M&A template contract, which was interesting, but I couldn't imagine doing that for the rest of my life. All the lawyers there aged 27 and up were anything but living the dream. They worked their ass off from 8am to 10pm to bill enough hours per month just so they could keep their respective partners happy. The partners were well dressed, hardworking and very prestigious people. They were nice to be honest, they weren't assholes like you would expect. They actually made me, and the lawyers that worked there, aspire to become one of them. But then you hear the dark side of things. One of the partners had 2 kids she hardly saw, she actually had a babysitter/cleaning maid who took care of them all the time. Another one was divorced and spent his time harassing every hot secretary he met. Actually many of the male part ners thrived on exploiting their prestige to flirt with the fairer sex. Which I can't help but feel a bit jealous of, having such prestige must be awesome.

Except that's all it is really, prestige. It's the main reason people study law, to my knowledge.

As I'm writing this, I'm contemplating quitting my master's and enlisting in a bachelor of IT focused on cybersecurity. I'm aware that it won't give me the same prestige, or the nice suits (I really like suits), but maybe I'll stop feeling miserable.

Just wanted to give you guys a view from another perspective, law school and law in general aren't all they're cracked up to be. They're miserable places to study and work. Just google the words law and depression in the same sentence.

oe 12 hours ago 0 replies      
I'd like to drive a train. Train Simulator will have to do for now.
nickelbagz 15 hours ago 0 replies      
I would do what I love, which is playing the piano and writing about cultural and political things
nnd 15 hours ago 1 reply      
Music. Maybe it's a burnout, but I find it difficult to use my creativity in programming.
sriram_iyengar 16 hours ago 1 reply      
hand-made board games
gnipgnip 17 hours ago 1 reply      
Farming and/or studying philosophy.
jalayir 17 hours ago 2 replies      
Either a chef or a lawyer. Maybe both.
seanlane 17 hours ago 0 replies      
Picked up metalworking while in high school, always figured it could make a decent backup plan.
Matachines 17 hours ago 0 replies      
Study history and/or industrial design even though I'm horrible in the latter.
imode 17 hours ago 0 replies      
as a hobbyist, I don't think I would ever do anything else.

as an employee/employer, become a technician. everybody needs repair work, and very few can call the result maintainable and sustainable. focusing on residential areas helps, too.

neom 17 hours ago 2 replies      
Fun reading this as I very frequently wish I was a programmer. :)
davidw 16 hours ago 0 replies      
Not really. I love solving problems with computers!
drivingmenuts 5 hours ago 0 replies      
All the time.

I'd love to change to working in 3D, preferably with Rhino (which I have a license for). But, that's not what a career is made of and lacking any practical experience pretty much means I'm stuck.

I'm not opposed to starting over at the bottom, as long as the work is engaging. Unfortunately, there's not much call for people with only minimal experience in Rhino3D, that I've found.

shove 6 hours ago 0 replies      
Every. Day.
berntb 11 hours ago 0 replies      
Regarding all discussion about creativity and programming, I heard a usability expert that had been painting for 30 years say this about GUI engineering:

Usability as a subject is the opposite of art, it is kitsch. You actively try to make simple and obvious; to have just one possible meaning.

She also said that art/painting was the best of hobbies, but would have been the worst possible of jobs. Too little money and too many interested people, so it was a rat race.

Personally, I've found hundreds of subjects I love to learn about. But it seems only one thing I really love doing. So they'll have to break my cold fingers off the keyboard. I love to teach about subjects I love, but sadly lack all pedagogical talent. (Maybe I had liked art if I wasn't color blind or so unmusical that I can't clap hand to most of my favorite music. :-) )

gambiting 7 hours ago 0 replies      
I would try doing anything that doesn't involve sitting in an office. Fixing bikes and cars, I would love to have a garage and do things with my hands, there's something incredibly satisfying about getting an old car to work, comparable excitement with getting your program to work.
qazpot 14 hours ago 0 replies      
Yes, writing and painting.
zappo2938 8 hours ago 0 replies      
I regret trying to program for a living.
SixSigma 9 hours ago 0 replies      
Yes. And I did. 30 years programming.

Then I got certified in Autocad, got a qualification in Manufacturing Engineering at part-time school, used that to start a degree in Supply Chain Management in the UK. I'm now on an internship in Miami and I already did a semester on exchange in Finland.

Worked out well so far.

SFJulie 10 hours ago 0 replies      
I had a lot of fun being a mover: just be at embauche at 7:00am, no BS required, no love of the job, being outside, seeing awesome landscapes ... being tired at the end of the day, with your job let behind and able to enjoy a simple life.

It was a simple life, but fun. And now season is over. So I look for a job in the IT.

It really changed my life.

I also learned doing bread, alcohol (wines and ciders), playing more music, and did some gardening, illegal picking of (common) plants in the wild ... brawling (movers are no angels) and winning. I grew a spine and a pair of balls.

Don't be scared, life out of programming is quite awesome.

In fact, life is amazing as long you don't feel like in a jail that sometimes is only in your head. I now live with my true colours ; I love to be dirty, mean and sweaty.

Raaah. It feels good to finally be yourself.

s1gs3gv 6 hours ago 0 replies      
learn haskell
dschiptsov 12 hours ago 0 replies      
Already did.

I have switched to be a guide for Tibet tours (Lhasa, Kailash-Manasarovar) and high altitude trekking and motorcycle tours in Nepal, Sikkim and Ladakh. Customers enjoyed my guided tours in Jokhang and Potala.

Better demand and much more tolerable life than in a coding sweatshop. For everything else there is literally no demand for anything except Joomla websites and Android apps outside the valley, which is already saturated.

And, of course, I have zero interest in things like React or Node.

The sad truth is that indie and small shop IT is already dead. Unless you are a young CS major in US there is no demand for programming jobs. Otherwise there will be a market, not just a few brokers like Toptal.

petewailes 12 hours ago 0 replies      
Not leaving, but augmenting, sure. I'm a programmer by day, and also a writer.
known 12 hours ago 0 replies      
partycoder 13 hours ago 0 replies      
Not all people like programming. Some people do it only for the money. I internally call them "paycheck zombies", and I try to just stay away from them since they're a bit draining at times, and rarely lead to learning something new.

Some other people are more career oriented and seek professional growth. There are various lines of professional growth, in each stage of the SDLC. Even if someone is new to the industry, a good attitude will eventually lead to growth.

Ask HN: Am I right there's no place for C++ developers in the startup world?
5 points by throwaawwaayy  4 hours ago   18 comments top 13
Cozumel 4 hours ago 0 replies      
Startups aren't about code, they're mostly not even about actual products, it's just a lot of idiots running around trying to get funding using the latest new buzzwords and shiny new tech that looks good on their resume.

If you have a strong engineering background especially in C++, you'll be just fine.

erichocean 12 minutes ago 0 replies      
We use C++ heavily in the startups I CTO. Recommended.
blackflame7000 48 minutes ago 0 replies      
C++ is one of the most powerful and ubiquitous languages in software engineering but keep in mind that you wont find much C++ in webdev because Python,Ruby,PHP, etc are at a higher level of abstraction and their interpreter was likely written in C.
itamarst 4 hours ago 0 replies      
Keep in mind that many companies will hire you even if you don't know the language they code in, on the assumption you'll easily learn new languages.

I've mostly done Python in past, and C++ long ago, but at current job I've also been writing Java, Javascript, Ruby and Kotlin.

cliffcrosland 4 hours ago 0 replies      
We use C++ heavily at Accompany. The CTO co-founder was one of the chief engineers at Google Analytics where most of the highly scaled systems were written in C++. Perhaps you could try investigating startups where the founders have a Google engineering pedigree?
pvorb 1 hour ago 0 replies      
If you like systems programming, you should look for startups using Rust or Go. I think they are more popular in the startup scene right now.
sharemywin 3 hours ago 0 replies      
Startups are about flexibility and time to market. Not two of C++'s best qualities. Obviously, a generalization and an opinion, but I would argue it fits the facts.
fiedzia 4 hours ago 1 reply      
C++ is dead there (and in many other places). The closest thing is Golang and Swift (and perhaps Rust).That doesn't mean there are no C++ jobs, but you'd need to look for them elsewhere. Why is that surprising?
detaro 4 hours ago 1 reply      
nowadays C/C++ is mostly something for:

* low-level infrastructure like databases

* desktop applications

* some embedded work

The vast majority of startups isn't doing anything like that, then you have to subtract those that do it using other technologies and there is not much left. And in many cases it's going to be part of a role, not a pure C++ position.

Once they grow more and more companies go into low-level things, but for your typical young start-up it's a waste of resources if it isn't part of the core product.

CodeWriter23 1 hour ago 0 replies      
Is C++ the only language you code in?
billconan 4 hours ago 2 replies      
most operating systems, deep learning frameworks, computer graphics systems are in c++.

the hottest 3 areas in tech, vr, deep learning/ai and self-driving cars, need c++ intensively.

c++ programmers are at the tip of the programmer pyramid.

jlarocco 2 hours ago 0 replies      
I don't agree with that statement.

At SolidFire our core product is written in C++. We were bought by NetApp and are no longer a startup, though.

It's not a trendy language, but there are startups using it.

nickpsecurity 4 hours ago 0 replies      
People use whatever lets thdm quickly put together applications. Most that know C++ probably dont hear much on C++ frameworks for web. Knowing about those could help. Here's one Ive seen a few times in comments although not tried:


Ask HN: How to actually start freelancing?
9 points by Im_a_throw_away  5 hours ago   2 comments top 2
BjoernKW 4 hours ago 0 replies      
Previous comment of mine about this:


As for what to offer I think CRO is a pretty good option. I don't know the rates for that kind of service but it seems much more specific than "I can build websites.". Everyone and their dog builds websites these days so you'd probably have a hard time finding a competitive advantage in the website building space.

Ideally, find the most specific, valuable niche you can think of. CRO for a specific industry for example.

itamarst 5 hours ago 0 replies      
doubleyourfreelancing.com has a lots of relevant, good advice (and some paid content I can't vouch for).

Basic idea: maximize value for customers. Don't get paid by the hour, get paid by resulting value.

How much money would a customer make if you did A/B testing? You want to take to get paid for the resulting value, rather than saying "oh that was two hours work so I'll get paid for two hours".

Which of the skills you have would maximize value for customers?

Ask HN: What would happen if Apple open-sourced OS X?
3 points by enen  7 hours ago   7 comments top 5
enkiv2 6 hours ago 1 reply      
Not much would happen. Big chunks of what constitutes OS X is already open source. Nobody runs GNU/Darwin the same way nobody runs Plan 9.

Apple's market is primarily geared towards people who aren't interested in the tech and are paying for the logo. After all, anybody who wants an OS X equivalent system who knows what they're doing can buy a bog-standard PC and run some free unix on it with GNUStep. So, the licensing for Apple products doesn't matter because Apple's market excludes anybody who cares too much about licensing (or anything other than branding).

dhagz 2 hours ago 0 replies      
The parts of OSX I'd like to see open-sourced are exactly the parts Apple will never open up. I'd love for their desktop environment to be open-source - if I could have that running on top of, say, Arch, I'd be incredibly happy. But the desktop environment is one of the big things Apple uses to sell their computers, and it wouldn't make sense to give it away like that.
bitshepherd 3 hours ago 0 replies      
Being that chunks of it are already available via https://opensource.apple.com/ not much would happen.

The NextBSD project was consuming some of the open sourced bits and bolting them onto a FreeBSD fork, but I'm not sure where that project has left off.

proyb2 7 hours ago 1 reply      
Apple did open source Darwin years ago:https://en.wikipedia.org/wiki/Darwin_%28operating_system%29http://www.puredarwin.org/

There is one implication that Apple is currently rewriting kernel level that will need a huge effort and was discussed in HN.

allenbrunson 6 hours ago 0 replies      
From Apple's perspective, the whole point of the work they put into macOS is to add value to macs, the selling of which is their bread and butter. (or used to be ... i guess now it's mostly selling iPhones.) If they were to open-source it, it would be quickly modified to run on bog-standard PCs, removing Apple's motivation to put any more effort into it.

In other words: don't hold your breath.

Ask HN: How much do you earn on average through software freelancing?
176 points by worldexplorer  1 day ago   113 comments top 35
fightfortheuser 23 hours ago 8 replies      
I used to charge $50 USD per hour, but I kept upping my rates. Soon I charged $100 per hour, and then $125 hour. The highest I ever got for programming/consulting was $150 USD per hour, but I don't charge that anymore. I've moved on to day rates.

Now I bill around $800 per day, but I only work about 6 super-focused hours, and I use the Pomodoro method every day. My clients are happy because I get a lot of work done, and I'm happy because I have to work less.

This is just doing general PHP dev work (Codeigniter and Laravel frameworks), and if I specialized, and if I focused on the ecommerce or finance industry I could probably make more. Most my clients are in the Rocky Mountain West, and so far I have more work than I can finish.

So if you want to increase your earning potential you should:

 1. Specialize and master a niche. 2. Network like your business depends on it. 3. Give free seminars and teach everywhere you go. 4. Label yourself as a consultant. 5. Don't be just a programmer. Work with businesses and fix their problems. 6. Know your worth, and don't be afraid to charge what you're worth. 7. Anchor your costs against how much value you'll make your clients. 8. Keep raising your rates until you can't get any work. 9. Work half as much as you used to. 10. And finally, spend time on things that matter like family, learning, and having fun.
Or you can keep competing against bottom-barrel programmers on upwork, and spend the rest of your life working for peanuts. Totally up to you.

mthomasb 1 day ago 4 replies      
We're a YC company that put together a visualizer for freelance engineering and design rates. It draws on a few thousand data points from our freelance invoice and contract product.

You can filter by location, type of work, and experience: https://www.hellobonsai.com/rates

mikeleeorg 23 hours ago 1 reply      
Back when I was freelancing, I charged around $150-200/hr for fullstack development.

I know this is on the higher end, but it is definitely possible to find clients that can afford this higher price point. I routinely took work from clients that had hired a cheaper team and weren't satisfied with the final product, needed someone to fix numerous bugs, or to optimize the performance of their technology.

Also, if you are interested in this higher price point, you need to be ready to truly partner with your client and help them solve problems, vs just writing code. This means embedding yourself in their team as much as possible (which can be done remotely; I always worked remote) and understanding the actual problems they had, rather than just building what they asked for.

On top of that, you'll need to own your solution all the way through. If your client doesn't see you as a lot of overhead, and you can act autonomously, then they'll be even more satisfied with your work and rates.

daxfohl 9 hours ago 0 replies      
I quit my 120K job for a long-term $75/hr gig. Turns out I'm making way less than I used to. Taxes are way higher and take too long, no benefits or vacation, have to spend more time on non-billable work. Client is a startup that's now running into financial issues of its own, so a raise is unlikely. This is in Kalamazoo. I have young kids and so can't put in a ton of hours to make up the difference.

Haven't spent enough time marketing, or really just don't know how to go about it. Living in small-town midwest it seems hard to make contacts. Everyone I've talked to wants to offer like $5000 flat fee for a week of work they need done (and we all know "a week of work" always turns into a month). Nothing long-term and nothing very profitable, so I've turned everything down.

In all likelihood I'll be back on the job market soon.

eloff 23 hours ago 1 reply      
I charge $120/hour for development work. I specialize in low-level, performance critical stuff, lock-free algorithms, C/C++, assembly, SIMD code. But most of the work I get is typical full-stack web application development, with a little mobile stuff sometimes.

I charge half rate to startups in top accelerators, like YC, that haven't closed an A round yet. The idea is to build relationships with future customers that have lots of growth potential - but who can't afford $120/hour.


I made more when I was working full-time though.

tuckerwales 23 hours ago 3 replies      
I'm a 21 year-old who has recently gotten into contracting to supplement my primary income (a Software Engineering Apprentice for a Defence contractor).

I earn 12 an hour for my contract work, which I'm quite happy with at the moment because 10 hours a week means I get an extra 500 per month (which is considerable at my age, it pays my rent and bills and some).

I know it doesn't seem much, but I think I'm actually quite lucky to be able to get a gig at my age with my experience.

ashnyc 4 hours ago 0 replies      
I come from the other side. I hire programers for my side projects and i have seen it all. As an entrepreneur the only thing i care about is that i have a working software. Some programers think they should be paid a lot of money but have very poor skills. If you are good at what you do, people will recognize that and you will be paid a higher wage. Just be good at your job and everything will workout.
uniclaude 21 hours ago 2 replies      
Before reading patio11: 75usd/hr

After reading patio11: 200 < x < 500

Then again, I don't only do software consulting, I ship (or fix, or optimize) solutions on time to help my clients make way more than I cost them.

keviv 23 hours ago 2 replies      
I'm a full-stack developer and I was working full-time till last month and freelanced occasionally. After leaving my job I decided to take up freelancing and currently, I'm making $35 an hour working on CakePHP/Laravel/Angular project which is low considering my experience (11 years). I usually charge upwards of $50 but this time I made an exception because the company is looking to raise Series A (which means more work at a better rate in future).

Last month, I got paid pretty good money for a React+Redux project.

Mail me at mail+efl@vivekgupta.com

I'm currently free for 20-30 hours a week and looking for more work.

NicoJuicy 21 hours ago 1 reply      
I freelance on .net projects for 70 per hour, now I also doing e-commerce for myself which gets me excited now.

Also busy with GPS webapplications on asp.Net mvc (embedded device who track trucks and the refrigerator ), WordPress sites, NodeJS ( MVP's),,..

I have a Cordova app before I go to clients, currently landing on too much work because of it ( it's a great conversation starter and builds trust). Will up hourly rates soon, but have a lot of work the next months ( mostly creating webshops for clients). I also work full-time.

My webshop currently lands me 500/ month without marketing, it's something totally different than full-stack development.

I also did something with Pokemon Go to learn how Facebook worked. https://news.ycombinator.com/item?id=12858993 i had the #2 fb page in Belgium. We did events to earn some money with it, it's the #1 rated comment ;)

Currently notified all me clients that i will probably have some delay, but nothing was planned for this month. I do put longer hours currently then i want for now, just to make sure everything will land on time... ( 16 hours per day at the moment, hope soon everything will be back to normal)

Also use a lot of jenkins and automation tools, i hate manual labor. My collegues use 4 tools i wrote for myselve every day. It just takes off a hell of time of lookup up usernames, passwords, phone numbers, logging hours, ... I guess you only need to use it in a "ux friendly" enough way, but just don't sink too much time creating it ;)

throwawayNov07 23 hours ago 1 reply      
I make $60/hour through an agency. I do this for 20 hours a week.

This is in addition to my full-time gig.

Assuming I'm booked eight months of the year, that's $38,400.

I could make more if I wasn't going through the agency, but for now, I don't have a name or connections, and I don't have the time to market myself.

So I figure do the agency thing first, build a name, then start soliciting direct clients. Then eventually ditch the full-time gig.

Honestly just stumbling through this.

pryelluw 18 hours ago 0 replies      
It depends. I work with clients and their budgets. Leaving money on the table doesn't bother me because I want long term relationships. For example, I'm wrapping up a 2 year project this month. Built the MVP all the way to two profitable product lines for the client. Super happy about it. I like to see my clients succeed.

My focus is building solutions to business problems. I don't look at it as software but solutions. When you approach it that way people are more receptive to what you have to say.

I don't reveal amount earned but can't complain. I bill monthly, weekly or per project and it works. Forget hourly. Either way, Im raising my rates for 2017. Best of luck.

siscia 22 hours ago 1 reply      
My actual rate is 100 /hr for developing work. I charge way less for skype calls, tests, discussions.

I am deeply embedded inside the small company I consult for, it is extremely nice because people trust me, are not in my way and are just looking for results.

Really happy, however since I don't only bring coding experience but also business acume I would definitely increase my rate to 150 /hr .

People come to me with problems, I make sure they actually have that problem, I listen to the solution they propose, I actually make my own proposal about what should be done considering both business and technologies, we talk a bit, more problem or constraints arise, we tweak a bit whichever proposal is better and then I go ahead and I implement it.

Time spend talking between 10 and 30 minutes, client have its solution about ready the day after. We are both happy.

bloomca 9 hours ago 0 replies      
Where do you get clients, if networking is not available for you? I mean, you are not based in the US, so you can't meet these people.

I used to work a bit in Upwork (I am doing complex SPA in React/Redux, though I can do it in other stacks as well), and charged 3550$ (depend on a project).

Also, my question is, how you raise the bar? Like, I know I can double my rates and offer "solution" rather just code, but how you find such contracts (people tend to not trust you there), and how do you present yourself?

fgpwd 16 hours ago 1 reply      
I am willing to work for 10$ an hour for full stack development (React/redux and go or firebase, SQL, sometimes node), or Cordova app development, or programming embedded devices (C or proprietary languages).

But no clients so far except for some friends who have promised to pay in the future if their startup gets successful or gets funded :)

I have tried the usual freelance sites but no one really bids on me. The reason is that I am from India and don't have much to show in terms of projects/experience - my previous company had a very strict non disclosure policy, and haven't worked on anything open source yet, don't have a blog, etc.

I am not very serious though and more focussed on a project/"startup" of my own but still looking for pocket money of 20-40$ a day to sustain myself without having to do a job. I am trying at fiverr now. Somehow I just haven't cracked the money nut yet.

attaboyjon 22 hours ago 1 reply      
I worked on top of my full time job doing web dev for Ad agencies, usually php, asp.net or CMS work. Billed at $80/hr, probably netting 40-60k per year on the side. I had always hoped it would lead me to a career as an independent, but that rate is not enough to make a living with a family. I eventually made it to being an independent, but I had to switch to doing enterprise consulting in a niche market at a much higher rate.
Arubis 1 day ago 0 replies      
I haven't freelanced in ~5 years, but while I was based overseas in a _very_ inexpensive living situation, I scraped by on $35/hour doing WP development (urk...) and infrastructure work (now "devops", though we hadn't come up with that moniker yet). I'm currently fulltime employed; if I were freelancing I'd charge >5x that amount.
naveensky 19 hours ago 0 replies      
I charge USD 35/hr and offer full stack services for Java/Scala, AngularJS/JS platforms. I have about 8 years of experience now.

I like to keep myself occupied for 6 hours on long term projects and keep 2-3 hours for short term projects. It helps me maintain my diversification across clients.

I am a bit of tech nerd and offer discounts for exciting ideas based projects, specially for startup. I think such projects are win-win for me as tech nerd and client as low cost delivery.

Feel free to reach me out at naveensky(.at.)gmail(.dot.)com. I always keep looking for new exciting projects :)

cgil1210 23 hours ago 1 reply      
What's the best way to start freelancing? A few years ago I used a few freelance sites such as upwork but the pay was fairly low and the work was just around building wordpress sites. Any recommendations? Specifically for backend or fullstack projects?
ciaranbyrne 23 hours ago 1 reply      
I earn about $150,000 for 50% of my time. The other 50% I spend on my own projects.
dver23 21 hours ago 0 replies      
For a couple of longer term customers I charge $145/hr.

I'm working a full time gig now and haven't taken on any additional work in ages, but depending on contract length I would start at $170 and up.

As I've seen posted here and elsewhere if you're experienced and charge less than yearly salary/2080 * 3 you are giving money back.

(My wife worked as a buyer at one of the national labs and had to purchase contractors, should used to have to tell them what to ask for because more often than not it would be too low for her to quote them out.)

zackify 1 day ago 1 reply      
I generally charge 80/hr to do ReactJS / React Native work. I have been doing this for the last 6 months on and off.
anguswithgusto 23 hours ago 2 replies      
$100/hr, albeit writing about/for software, not writing the software itself. Copywriting is a super great gig.
ciaranbyrne 23 hours ago 0 replies      
I earn approx $150K / year for 50% of my working time on client projects. The rest I spend on my own projects
du_bing 20 hours ago 0 replies      
I do web development for $25/hour, HTML/CSS, JavaScript, and some basic things on server, Apache, MySQL, Python. I'm in China, so it's good for me. If you have any project needs help, feel free to contact me, tarvos21 at gmail.com
tedmiston 23 hours ago 0 replies      
Do others working in this industry differentiate between freelancing (project-based) vs independent contracting?
bdcravens 20 hours ago 0 replies      
Don't really freelance anymore, but when I did, $75/hour (mostly in Rails and ColdFusion) was typical. I do some mentoring (codementor.io) at $80-120/hour (they take 20%). (My rates would be higher if it was my fulltime gig)
marpstar 1 day ago 1 reply      
I freelance part-time in addition to my 9-5. Mostly doing WordPress sites, with the occasional ASP.NET app for projects that need something totally custom. Some other web/mobile work as well. I've been averaging $40k/year the past 3 years in a row.
dzlobin 16 hours ago 0 replies      
$125-175/hr for contract iOS development in NYC.
kovrik 23 hours ago 1 reply      
I am doing Java (mostly), 10 years of experience, in New Zealand (not much work to do here, unfortunately), 80-100 NZD per hour.

I'm currently free for about 20-30 hours per week, looking for more work.

Feel free to contact me:kovrik0 at gmail.com

richardwardza 23 hours ago 1 reply      
PHP/Node/Phonegap Development in South Africa - R600/hour (about $50) for local customers, $70/hour for US based and 50 euro/hour for European based customers. I think I need to up my rates.
tanshul 20 hours ago 0 replies      
I charge $30AUD an hour for freelance WordPress development. Billing monthly an average of 8 hours ($240) for maintenance and support for an agency which isn't much but nice extra income on the side and the occasional from scratch projects (charges depending on requirement). Main job is a front end developer (angularjs).
nraynaud 23 hours ago 0 replies      
I earned a bit less than 10k since August 3rd with French clients (I'm still ramping up my prices).
up_and_up 1 day ago 2 replies      
Hourly? Yearly? Fulltime? Part-time?
tn_ 23 hours ago 0 replies      
I usually charge $100/hr for native mobile development on the side.
Ask HN: Why hasn't Perl 6 taken off yet?
173 points by totalperspectiv  1 day ago   267 comments top 69
atemerev 1 day ago 6 replies      
Perl is a hacker's language (not unlike e.g. Common Lisp). It brings maximum power to the fingertips of an individual. When you are alone, developing with Perl is a blissful joy of pure godlike power over your domain. Perl6 amplifies this feeling to eleven and beyond: there's almost nothing you couldn't do with a few lines of code.

The popularity of Perl coincides with the golden age of personal computing (and hackers culture). PCs got powerful enough that individuals could do the same things that were only available to big corporations and sometimes universities. Perl helped to harness this power, becoming the proverbial "Internet duct tape" to connect things (in the world of UNIX with emphasis on text protocols, the most powerful language for text processing won).

When lone hackers were no longer enough to satisfy the demand, the world had moved on to create _software industry_, and Perl's advantages (all power to the individual) started to be harmful. Different individuals have different preferences, and when you have to work in the team, reconciling your differences with your colleagues creates way too much friction. To facilitate teamwork, more uniform languages were deemed necessary, where understanding other people's code became a priority. Even open source software moves faster when anybody can read and participate in your code without fighting over style. This attitude was firstly exemplified with Java; now, we have Golang, which is a king of all languages optimized for team development. To facilitate this, the expression power available for individual developers had to be cut short.

As a consultant supporting my own code, I still use Perl, and if you are working alone, it's your fine bet. But as 99.9% of people work in teams, Perl6 is not the best choice for them.

saberworks 1 day ago 3 replies      
I love perl 5 and have been using perl since 1997. I haven't touched perl 6 yet simply because the whole mess is still too confusing. It's not obvious what I should download and the frequent release announcements just confuse the issue further. If I want perl6 why am I downloading rakudo star? What the heck is a moar vm and why do I care? Why is the download page telling me it supports "Christmas Perl 6 (6.c language version)?" What is 6.c? Are there multiple versions of perl 6 that I have to worry about? Why does every release announcement say something like this:

"Please note: This announcement is not for the Rakudo Stardistribution[^2] --- its announcing a new release of the compileronly. For the latest Rakudo Star release, see<http://rakudo.org/downloads/star/>."

Perl 5 is much more straightforward. Their download link sends me to a page where I click my platform and then there's a link to "download latest stable version." Why can't I just download the latest stable version of perl6?

I know I can spend a couple of hours learning more about it but perl 5 more than meets my needs and I'm comfortable with it.

tikhonj 1 day ago 2 replies      
The thing to remember with these questions is that popularity is largely a matter of social dynamicsnot the language's intrinsic qualities. I mean, sure, qualities matter to a point, but that point is pretty low: it just has to work well enough. Past that, it's mostly a matter of spreading through social networks, perhaps helped on by marketing.

So when you look at a language and ask why it isn't popular, the answer is probably not that it's bad or that it has terrible features or that it's missing things every other language has.

Instead, the relevant answer is some combination of timing, marketing and luckand Perl 6 definitely flubbed the first two!

It's been, what, two decades since Perl 5 first came out? In that time, trends have changed, people's preferences have shifted (and ossified) and even the role of a scripting language is different. And Perl 6 is not making any of that up on marketing, niftly logo notwithstanding: the Perl brand has been pretty well tarnished over the past years which makes these the absolutely wrong coattails to try sliding in what is supposed to be a brand new language.

None of this, by the way, shows that Perl 6 is a bad language. That's a different discussion entirelya discussion in which popularity plays a small role at best.

But it is to say that I'm not all that surprised Perl 6 hasn't gotten anywhere.

markrushing 1 day ago 1 reply      
I just started playing with Perl6 a couple weeks ago, and I am completely loving it now. It's the strangest process to get used to. I haven't had this much fun programming in a long time. Some frustration every one in a while until I can wrap my head around some new concept, but that's to me what this language is all about. SO much conceptual stuff in it. Very, very rich.

I've been converting some old stuff to it to learn it, and it crazy how much more compact things can become. Working with grammars has been amazing. And I'm just now getting hit over the head with how flexible class roles with parameters can be to consolidate methods that do similar, but slightly different things.

I haven't even started into the concurrency bits yet... something about "promises" and "supplies". But I'm actually looking forward to it at this point. And that's really a surprising thing to me ;)

Anyway, my 2 cents on it at least. I'm not sure it matters if Perl is ever a poster child for anything. I think it kinda just doesn't matter.

beat 1 day ago 3 replies      
Perl was the poster child of scripting languages. When I started hacking on Perl 4 in the mid-1990s (before there was a Perl 5), it was a miracle language. I was throwing out multi-thousand line C programs wholesale and replacing them with 50 line Perl scripts that worked far better (daemons and Sybase reports, mostly).

Around 2000-2001, I worked on Perl 5 in a close-knit team at a dotcom startup. Even with daily interaction, it was really hard to keep coding standards straight and readability under control. The problem with Perl is that it tends to be a different language for every programmer. Its flexibility leads to arcane code that can only be easily understood by the person who wrote it.

Years later, in different roles, I've worked extensively with both Ruby and Python (I prefer Ruby). I will never, ever, ever go back to Perl for anything more than one line long. I still use Perl for 'perl -e' one-liners in the shell, mostly complex greps. That's it. If I write anything small enough that structure doesn't matter, I use /bin/sh. If I write something large enough that structure matters, I use Ruby.

Why? Because I like to be able to read my code.

Ruby is wonderfully expressive. It can do everything Perl can, and it does it in a much more readable, much more human way.

oneandoneis2 1 day ago 1 reply      
My perspective as a Perl5 dev: Perl6 just doesn't interest me.

The two main reasons: (a) It's still not finished, but mostly (b) all I ever see is people in love with how clever they can be with the language.

I don't need to see hyper-clever ways of using built-in lazy memoised lists to generate a Fibonacci sequence in a dozen keystrokes. If I get tempted over to Perl6 (or any other language) it'll be be by examples of how easy it makes the boring, mundane tasks that I actually need a langauge for - things like reading from/writing to files; handling dates/times nicely; etc. etc.

What I like about Perl5 is its "Make the easy things easy and the hard things possible" mantra. The only mantra I hear from Perl6 is "Look how cleverly you can solve this contrived example". That's not something I care about in the slightest when I think about what language to write my next program in.

zoffix222 1 day ago 3 replies      
Because we aim for organic growth: not too fast and not too slow. Based on stats, our userbase doubled since last year; and that's with an yet-to-be-optimized compiler that's an order of magnitude slower than competitors and by some people's standard not yet production ready.

It'll also take a bit for people who loudly push 25-year-old languages like Python and Ruby like holy grail to... die off (no, I don't want them to convert). Perl 6 is a next generation language over them and it'll take next generation of programmers to make use of the new programming paradigms.

What you're probably asking is why hasn't Perl 6 went viral like Swift, Rust, or Go? Well, we don't have a multi-million (or -billion) company backing us, so fanboys and people who are after the latest shiny things aren't flocking to us like to manure. But look around this site: those langs get as much nonsensical comments from the Python-Ruby zealots who are too scared of new languages :)

Perl 6's first production release was less than a year ago. It's a bit unrealistic to expect it to be a "poster child" of anything so fast. If you're old enough to remember, no one gave a shit about Python until at least second version.

Don't worry about popularity. Learn many languages and use what you like using.

yolesaber 1 day ago 1 reply      
Because it waited too long and now everyone who needs scripts just uses Python/Ruby/Lua instead. I highly doubt Perl 6 will take off in any meaningful sense. Not to disparage the language, it's just the social dynamics of the software world and tastes have shifted. Perl is, rightfully or wrongfully, considered a legacy language of the 90s and it would take a serious re-branding and evangelization effort to change that perception. That being said, I know some folks who pull in pretty good bank maintaining Perl apps but they are definitely not writing Perl 6 on the day to day

The logo is cute, I will say.

cwyers 1 day ago 1 reply      
The short answer boils down to, "It might be dangerous, you go first." Moving to a brand new language (which is what Perl 6 is, despite its long incubation and its vestigal name) has real costs - the libraries you have come to depend on aren't there, new libraries to replace them aren't all written yet, some might never be, the ones that exist aren't as feature-complete and battle-tested. For a new language to get adoption, someone needs to go in there and start doing those things, and deliver a value proposition. If a language wants to get followers, at least in the beginning it's better to have one "does it better than anyone else" area than to be a jack of all trades, too.
wwweston 1 day ago 2 replies      

1) The field is pretty crowded. There's a lot of languages competing for attention. It takes time to learn. Which ones should I spend time on?

2) Momentum. Scripty siblings Python & Ruby & JS & even PHP have active communities with a lot going for them.

3) Baggage. Some of the conventional wisdom about Perl 5 is pretty iffy, but it's well established conventional wisdom, dammit! In fact, you'll almost certainly see it recapitulated in this thread. Most arguments to the contrary seem to be slow to make a real dent in what Everybody Knows about Perl. The fact that Perl 6 is a different language will probably be equally slow. People will repeat the comforting mantra that Ruby is the new Perl. Order will be reinforced.

4) Blub-ish paradoxes. Perl 6 is doing some weird and different stuff. Is it hyper-useful weird and different stuff? Will I know until I learn to use it?

5) Not a big win in terms of market value yet.

ericdykstra 1 day ago 1 reply      
I don't know if there are any wide polls available about this, but from my experience:

- Most perl developers moved on long ago. My last 3 bosses were all "perl" people who switched to Ruby as their primary language around 2010.

- No strong argument that perl 6 is "best-in-class" for any particular type of problem. This is often what brings interest in new languages (Go, Elixir, and Rust for example, all have this).

lenkite 1 day ago 2 replies      
I learnt Perl 5 a long time ago (in school) and used it for CGI based web-sites and sys-admin stuff. I always found it easier to rewrite Perl code from scratch than maintain it. Of course at the time, I was a newbie programmer, so I don't blame the language.

I don't know why I should learn Perl 6 when there are so many new languages to learn. (Just keeping up with web-tech and Javascript itself takes an enormous chunk of time away)

Can a perl 6 geek give a use case of why perl 6 would be better choice than Ruby/Python/ES6/Java/Scala/C#/F#/Rust/Swift for an application in some domain ?

A comparison on where Perl 6 is superior on different parameters such as productivity, libraries, module system, documentation tools, packaging & assembly, macro and micro performance, runtime-scaling, concurrency models, hot-deployment, software-update, etc would be great.

joelberger 1 day ago 3 replies      
I think the biggest problem Perl6 faces now is the perception that it is unfinished. This is mostly a problem of their own making. The language was in development for 15 years! In that time people got it drilled into their head that it wasn't done yet and likely would never be.

While this perception did hurt Perl5 it seems to have also hurt itself since reading this thread and seeing the number of people saying that it is "still in progress" or "still changing". This brings me to my second point, and the one that frustrates me more.

In fact Perl6 was released as stable 1.0 on Christmas of 2015. You could be excused for not noticing it. There were a few articles in a few technical journals in the months leading up tot he release but mostly the release day went by completely unnoticed and barely remarked upon.

Perl6 is a spectacular achievement! A language designed over the course of 15 years with the extreme flexibility and malleability to last 100 years more. This could have been a news story, a big release party, lots of hype, press releases. A language in the works for 15 years, it must be great right!?

Instead, to keep with an in-joke about "released by Christmas" it was released on Christmas day by developers who had family plans to a community that was busy with their own. I doubt many people know it happened. Indeed this thread seems proof of that.

Its not everyday that a 15 year project is completed. What an opportunity for exultation, and good press, wasted.

dmerrick 1 day ago 2 replies      
Perl 6 was too little, too late. It was hyped for a long time and delayed for a long time. During that time, everybody who was impatient and not forced to use Perl ended up moving to the new hotness languages like Python and Ruby.

Ruby is probably the main reason Perl lost so much market share, since it took a lot of the underlying philosophies from Perl and turned it into a beautiful, easy-to-read language.

hoodoof 1 day ago 4 replies      
For me the essence of it is this:

Perl says "there's more than one way to do it"

Python, by contrast, says "There should be one-- and preferably only one --obvious way to do it."

The practical outcome of the Perl philosophy is that Perl code can be extremely varied to get the same thing done and therefore much harder for different programmers to understand and maintain. Python programmers are more likely to quickly understand the intent of a chunk of code regardless who the author is.

Perl at its worst can also be pretty arcane and I've heard it described as "executable line noise". That doesn't make for maintainability.

progman 1 day ago 1 reply      
I (former Perl5 dev) am amazed that Perl6 actually has become "production-ready", after all those years. I find it quite good, and there are many interesting new concepts.

However, some things seem to be harder. For instance, it seems that I can't use the handy =~ s/.../ string replacements anymore but have to write grammar rules. Is that true?

If the old way is still possible (without Perl5 mode) then I cannot find it in Perl6's documentation.

Apart from that -- good work!

BTW: There is only one thing which I really dislike about Perl6, and that is that "nifty logo" :-) If you want to attract professional developers you should provide a professionally looking logo.

pfarnsworth 1 day ago 5 replies      
This is my own personal opinion, but I despise Perl. The language requires a ton of memorization of small, tedious rules that are arbitrary, and there are many disparate ways of writing the same thing. I remember giving up on Perl when I discovered that || and or were both "or" operators but had different precedences.

Again, this is my own personal opinion. I know many people have made some great software based on Perl, but it's the only language I won't touch with a 10 foot pole, and I've spent a couple of years programming in PHP and a year in COBOL.

pjc50 1 day ago 0 replies      
Perl 6 is the poster child for "second system effect".

The python community have just about managed to achieve a backwards-incompatible change, which was fairly minor and developed in a reasonable timeframe to address certain specific issues.

The Perl community were made extravagant promises 15 years ago. People started holding their breath for 6. By now, everyone has given up and the delay has asphyxiated the community. Not to mention that the Perl niche is much more crowded and still has a working, complete Perl5 in it.

oblib 1 day ago 5 replies      
I think the Perl community had a lot to do with Perl falling off in popularity. The standard reply to questions posted the "Beginners Perl" mailing list was "RTFM dumbass".

The "Learning Perl" book sucked hugely. CPAN is pretty cool but too many modules have poor documentation and almost no example code.

Web app frameworks got convoluted and didn't make things easier and tended to lock you into doing things their way.

Despite that, I still liked perl because it did let me do things my way. I waited and waited for Perl 6, and then quit caring.

This year I finally rewrote a perl/cgi web app in Javascript. What little server side I code I needed I used Perl 5 but there was very little.

jprzybyl 1 day ago 0 replies      

Maturity: Perl 6 was released a little under a year ago. That's not long, and the leading implementation has not yet caught up with the standard (though work is ongoing). The ecosystem isn't quite there yet either.

Examples: People can be really bad at imagining value in the right things - they need to see it. There hasn't been a very compelling killer app yet.

Perception: People conflate Perl 6 with Perl 5. (Reasonably!) Most people remember TIMTOWTDI and remember that it was a bad thing, or at least that they prefer the Zen of Python. Most of all, they remember trying to read bad code. I don't think that Perl encourages bad code, but it sat in spaces that had lots of bad code already. (Lots of code made by people who are not programmers.) There are also codebases in Perl that are very well made, and easy to read. But we are better at remembering bad things.

Again, IMO, Perl 5's biggest problem was the surprising language. I could write something that was legal code, but had different semantic value than I thought, and the language was littered with cases like that. It was common to think that Perl was to complex for any one programmer to know.

Perl 6 isn't like this - the entire language is composed of simple components (at least, simple for their problem domains). It's also littered with good ideas that don't exist in other languages, like their regexen and grammar support. Everything else in the language is still top notch, like unicode handling and concurrency.

Basically, it is the things around the language, not the language itself. I think it is telling that people saying they don't want to use the language are saying "Perl sucks" rather than "I don't like feature X" or "This construct is confusing".

(I remember Eevee saying that "Perl 6 is truly the realization of Perl 5s mission: to be startlingly consistent, and also just plain startling." I think that when people look at Perl 6, they'll be startled. But when they are no longer surprised, they'll just find powerful consistency.)

int_19h 1 day ago 1 reply      
The reason why developers don't migrate from other languages is plainly because Perl 6 doesn't offer enough unique things that people actually care about to migrate.

The reason why existing Perl 5 developers don't migrate is because they don't need and/or want to. The benefit would mostly be derived from writing new code, but most Perl 5 code in the wild are legacy systems and complex admin shell scripts. Those are exactly the kind of thing that you don't want to rewrite in the latest-and-greatest; the potential to introduce subtle bugs by upgrading is more important than the benefit of being able to use new constructs in those parts that you need to improve. And the vast majority of new code is also admin shell scripts written by experienced greybeards, who really don't like their cheese moved, and so will stick to what they're used to for as long as they can.

aikah 1 day ago 0 replies      
The story of Perl vs PHP vs Ruby vs Python is interesting. Apparently both PHP and Ruby were created because its authors found Perl too complicated 20+ years ago(!?). There is definitely a problem with that language (and I find Ruby already complex) that looks extremely cryptic for a non Perl developer. Perl is still used in place of bash scripts and in legacy apps, I just don't see people writing new software with Perl at first place. And System administrators have moved to Python which is now bundled with most distributions. Python just killed Perl.

> So, why isn't it the poster child of the scripting languages yet?

Why would people move from PHP or Python back to Perl ?

jjolla888 1 day ago 2 replies      
I love Perl. My favourite language.

But i hate Perl6. It feels like an obnoxious showoff who people prefer not to talk to.

It offers little that I crave for in Perl. And those bits I can do with Go already.

Perl6 is a distraction from what we should have had .. I'm still dreaming of the day Perl7 comes out with these features: (i) full Perl5 functionality (without having that klunky Inline::Perl5), and (ii) built-in concurrency.

Perl6 is late to the party. Sorry kid, nobody likes you and besides, it's time to go home.

MichaelMoser123 1 day ago 0 replies      
> Why hasn't Perl 6 taken off yet?

i think the story it similar to Visual Basic 6 and VB .NET: the change between perl 5 and perl 6 is really big, perl 6 is a new language - not just a change of version, people who are comfortable with perl 5 have little incentive to learn it all again (or they have switched to python)

brudgers 1 day ago 2 replies      
Around the new year, I looked at Perl 6 as a candidate for focus in 2016. This was around the time Perl 6 was officially released. I encountered two impediments.

1. At the time, there was not a great 'hello world' installation story for Rakudo Star.

2. There was not a good Perl 6 book published in the last ten years (that does not appear to have changed per a quick Google).

The most readable information I found was the Advent Calendars, but it's fragmented, poorly indexed, and doesn't form a coherent whole. At the time, there wasn't a good StackOverflow story (and the most recent question right now is from October 16, and the average is less than one question per day).

That said, Perl 6 is obviously a long term project and looks like an innovative language that could build mindshare with a bit of luck and the right resources (Ruby and Python didn't become popular overnight). All I'm saying is that it was not a good fit for me at the time.

tgarma1234 1 day ago 1 reply      
I think that logo is really childish and weird looking. It puts me off. And Larry Wall talking about perl gets old really fast.

In my opinion perl will slowly die because it has no social capital. A good sign of this is when you are around other programmers working on a real problem if you say "Hey let's solve this problem in perl!" it will almost always be the case that everyone can do it that way and knows exactly what perl to script (if they are of a certain age) but almost no one would even bother. Who cares about the why. It's just the fact. You get no extra points for knowing perl and for the most part if you are the guy on the team that is assigned to work on some old perl script it's probably a bad sign for you career-wise. Other languages, on the other hand, do have social capital.

Ultimately for me it's a lot like asking why everyone still uses the QWERTY keyboard when there are other keyboard layouts out there that are so much better. Perl might be better at some things, but like alternatives to the QWERTY keyboard, it's just weird to use it and the payoff isn't big enough to justify the change.

philwelch 1 day ago 2 replies      
It took 15 years for a "production ready" Perl 6 interpreter to be finished, at which point Python, Ruby, Lua, and even Node.js had more than enough traction to not leave much room for Perl 6 in the market.

Six years ago I got into a flamewar on Hacker News about Perl 6 not being done yet and had to clarify to an angry Perl hacker that by "not being done", I meant, "as of 2010 we only have an incomplete implementation of a draft specification of the language".

reidrac 1 day ago 1 reply      
I used to love Perl 5 in my free time for personal projects around 2009-2010, frameworks like Dancer or Mojolicious were getting traction and it was a lot of fun; but when I wanted to change my career and move away from what I was doing at the time (PHP mostly), I finally decided to go with Python and that meant no time for Perl (and no Perl 6).

Basically at that point there were less Perl jobs and the language had (has?) bad reputation on being too easy to write hard to maintain code that I thought the language wasn't worth the peer pressure when Python or Ruby were nice languages too with open and welcoming communities behind them.

Perl 6 seems to add to that bad reputation unfortunately, adding extra complexity.

This is just an anecdote, but reading the comments seems like other people had a similar experience.

davidbanham 1 day ago 1 reply      
Shortly after release I got interested, looked into it enough to discover that speed was a concern for the future and that the current implementation was super slow. I wandered away.
rukuu001 1 day ago 1 reply      
1. Because Perl was asleep at the wheel while Python, Ruby et al got popular.

2. Perl has a bad reputation - lots of people wrote really really obtuse code in Perl and called it clever. Maintenance sometimes feels like stepping into an alt. dimension.

bootload 1 day ago 4 replies      
"why isn't it (Perl6) the poster child of the scripting languages yet?"

In the Perl6 community there is no equivalent of "The Python Tutorial" [0] or the "Python X.Y.Z documentation". From Python 1.X onwards, if you wanted to learn Python from scratch, this is where you started. Where is this in Perl6 version that assumes you start from scratch without having to learn the baggage of PerlN? [3]

[0] If I'm wrong loot at this: https://docs.python.org/3/tutorial/index.html and point me to the Perl6 equiv.

[1] https://docs.python.org/3/

[2] where N < 5.X

tete 1 day ago 0 replies      
I know this isn't going to happen, but I think the only way to make Perl 6 the new poster child would be to rename it.

It has a lot to do with human psychology. People don't like that argument, but many things happening in IT have a lot more to do with psychology, sociology and marketing rather than any technical ("factual") reasons.

The most technical reason probably is the cost to switch, but that reason doesn't explain many things and people do switch to new things all the time.

anaolykarpov 1 day ago 0 replies      
I'm a (very happy) Perl (5) dev and although I've attended lots of Perl 6 cool presentations, I haven't took the time to learn it yet. My reasons are related to the fact that there are not that many commercial opportunities with it just yet.That is a thing which I expect to change in a relatively short time. I've already seen a few job posts looking for Perl 6 developers, which, given the language is declared 'production ready' for less than a year is a pretty amazing stuff.

Also, there aren't hat many libraries in its ecosystem yet, a thing which can be a plus for devs who want to create a name for themselves in the open source world by implementing/translating libraries with a large user base potential.

mancerayder 1 day ago 0 replies      
I'm a Linux sysadmin/devops with a heavy automation background and quite an interest in automation. I've been writing Perl (until recently that is) for over 15 years. Today I focus on Python, both in my personal and work projects.

I do it for the same reason I learned Perl originally, because I have a mortgage/rent/expenses to pay. You have folks who walk around with LISP books under their arms and learn obscura perfecta like OCaml, but I'm a lot more simple-minded: I learn what I need to learn to get my job done and also new jobs/gigs lined up. I'm not an academic, nor an advocate.

Don't get me wrong, I enjoy reading purist debates, early adopters, experts, people with interest in dynamic language theory, duking it out. At the end of the day, though, if not a single person around me writes in Perl 6, and not a single job listing shows Perl 6, then I'm probably going to wait it out until that does start to happen. And then we'll see.

So, to answer the question by the original poster: I haven't adopted Perl6 because I'm not an early adopter. Maybe if the 24 hour day suddenly became a 28 hour one ...

makecheck 1 day ago 1 reply      
For me the Perl 6 and Python 3 changes have similar problems: no realistic solution for massive code bases.

I worked at least 3 different places that had massive code bases in Perl 5, that saw no signs of changing the entire time. Furthermore, ecosystems develop around these things, e.g. people (unwisely or not) saving data as Perl 5 hashes. There are similar dependencies on the Python 2.x way of doing things.

Also, every project has its own long-term maintenance items to do. LONG before I consider screwing with the very syntax of my entire code base, I will be thinking about things like: avoiding deprecated APIs in other libraries, refactoring problematic designs, etc.

Also, project repositories frequently branch out and every merge is a pain point. There could be many people developing unrelated items in parallel. There is NO convenient place to merge in somebodys completely new language syntax, just like there is no place for gratuitous reformatting of code or other high-impact, low-benefit scenarios.

And finally, even if a code base isnt massive, developers have limited time. It is always more attractive to fix some bugs or add dozens of features. It is never attractive to do a complete rewrite of code for unproven gain and definite pain.

PaulHoule 1 day ago 1 reply      
In the 1990s I think Perl was something special. Tcl was a competitive scripting language but I think a lot of people saw it as too weird. (Imagine LISP where the basic data structure is a string)

By 2000 or so you had Python and PHP coming on really strong. PHP owned the web and I think Python owned everything else.

I had a module that did web authentication with cookies in a number of languages (PHP, Java, Cold Fusion, Perl, Classic ASP) and out of all of them I liked the OO Perl implementation the best.

Ulti 1 day ago 0 replies      
Because people keep asking why it hasn't taken off rather than using it and posting here about how it was awesome.
zakame 1 day ago 0 replies      
I suppose Perl 6 "taking off" and becoming such a "poster child of "scripting languages" nowadays is not so much about "scripting languages" but rather "application platforms" instead. Gone are the days where one would just write a bunch of scripts for a cgi-bin--you're now supposed to write a complete environment for deployment onto highly redundant, low-latency clouds--bonus if going "Serverless" and transpiles to JS.

That said, Perl 6 is becoming such an attractive platform for those who have bothered themselves to go and actually try it; being a Perl 5 hacker myself, I'm taking my time learning it in parallel to a few other languages, and its interesting to see how 2 decades of wandering has brought forth. I suppose that maybe Perl 6 will become like a Lisp (in such that learning provides for a deeper appreciation,) or maybe not (e.g. we actually make https://xkcd.com/224/ happen,) but at the end I know Perl 6 will be there as a tool I can reach for.

zzzcpan 1 day ago 0 replies      
The syntax is even more complex and harder to learn, than the syntax of Perl 5, so it has to offer something worthy of an effort. Even worse, it has to compete with non-scripting languages, limiting its usage to pretty much just I/O bound tasks.

If you think about it the only one among new scripting languages that offers something over competition is Elixir, because of the actor model. And it's getting traction.

drelihan 1 day ago 0 replies      
That's very similar to saying why haven't Perl 5 folks switched to Ruby or Python or whatever. For all intents and purposes, Perl 6 is a different language with a very similar sounding name. Those folks who have used Perl 5 and built up systems around it, they are only going to switch if there is a compelling reason to.
natch 1 day ago 0 replies      
I was tired of dealing with TIMTOADI (there is more than one way to do it), one of Perl's catch phrases. More like there's more than 50 ways to do it. It sounds wonderful and liberating, and it is, but it also means that when you just want to read some docs, the docs go through all the different ways, when you just want to get something done right now. And reading others' code, no two solutions are the same. Are there benefits, sure, yes, but sometimes you just want to know the best practice.

With Perl 6 having a learning curve, I thought I might as well use that time to instead learn Python, a language designed with the stated principle that there should be one preferred way to do things.

Unfortunately I started learning Python just as the Python 2 vs Python 3 rift was at a peak. Sigh.

gfldex 17 hours ago 0 replies      
About a decade ago many educators where looking for a language to teach programming to utter noobs because governments where scared by the year 2000 bug and asked them to produce more programmers (the latter part is a lie but it sounds nice :) many of them picked Python. Educators play a big role these days when it comes to a first language. Most folk who commented here likely went to school when teachers didn't have computers and didn't even think about teaching programming -- that was considered a hobby. So far I know only two educators who want to teach programming with Perl 6.

It takes years for a language to become used by a reasonably large group to make a difference. Given you come from Python you probably know that the first release happened in 1991. Do you know anyone who used that language before 2000? So Perl 6 didn't take off yet because less then a year since the initial release has happened.

tmaly 1 day ago 2 replies      
I have been using Perl since 1996. I use it as my main language in a professional setting day to day.

I have started doing some things in Go, but the bulk of my code is Perl 5. Having lots of code written in Perl 5 that has worked for over a decade, makes a tough case to suddenly switch to Perl 6. In some sense its like switching from Python 2 to 3. You have to get all the CPAN authors to port all of their modules that your code depends on. I think there too much risk and not enough resources on the corporate side to make the switch.

cafard 1 day ago 0 replies      
I have been using Perl for more than twenty years. I remember installing Perl 5 because somebody had written the network monitoring tool "SATAN" in it. I have written some nasty code with it, and some pretty clean code. Relying on CPAN, I have saved myself and others just huge amounts of time and trouble.

These days I tend to use Python for new projects, because the young coders where I work are more accustomed to that. Now, if someone where to show up fresh out of school and sure that Perl 6 was the thing, I'd be open to trying that.

skywhopper 1 day ago 0 replies      
Perl 6 took so long to come out that it long ago became a punchline. The actual launch was the softest I've ever witnessed, and the retention of the name is misleading given the huge changes in the language.

I expect usage and awareness will grow with time, as the geniuses that do the proofs of concept that get the masses' blood flowing burn out on Clojure, Rust, and Haskell and start looking for the next big thing, and write a framework that makes people's heads spin.

Maybe that genius could be you.

bshimmin 1 day ago 2 replies      
The comments here are great and answer the question in various sensible ways, but I slightly wonder... could Perl make a comeback if it got its own Rails equivalent? You could argue that Laravel has done a lot for PHP (though of course PHP never went into the wilderness in the way that Perl did). Perl 6 seems to have a lot of magic in it, and I wonder if any of that could be usefully leveraged to make something very modern, very clever, and very Rails-esque that actually might get people interested in using Perl 6.

(See also Phoenix and Elixir.)

branchly2 1 day ago 0 replies      
I think it's because the language appears to be very complex. So much syntax, context, and novel terminology.

It appears that Perl 6 lets you be very clever and can save you some keystrokes. But I don't want to be clever, and am willing to type a few extra keystrokes if it makes things easier for me to understand the next time I look at my code.

throwaway7645 1 day ago 0 replies      
Mainly because it isn't ready yet as it is slow and certain features are still missing like macros and concurrency. It's a cool language for sure that I'm excited about, but needs to be at least as fast as P5 (on average) before adoption.
CodeWriter23 1 day ago 1 reply      
I have tens of thousands of lines of code written to Perl 5 that I can't run under Perl 6. That's it in a nutshell.
random55643 1 day ago 0 replies      
So, you understand why Python 3 isn't leading yet, but you don't understand why Perl 6 isn't?
Ericson2314 1 day ago 0 replies      
Dynamic langauges cannot deal with braking changes because the cost of refactoring is too damn high.
Roboprog 1 day ago 1 reply      

(mentioned elsewhere, but let's distill it down)

pknerd 1 day ago 0 replies      
Actually other languages user got some awesome web frameworks: PHP got Laravel and Symfony, Ruby got Rails and Python got Django and Flask. On other hand Perl community kept waiting for v6 for long time and in due course users shifted to other languages due to reasons mentioned above.
misccodework 1 day ago 4 replies      
cuz the language is cryptic as fuck, using every symbol there is; code is like

 my a = fn { local $v= _[0] %~=->
possibly a time investment trade off, focusing on another C-style lang is not as big as a time investment, and translates better to C and C-lang derivites

niroze 23 hours ago 0 replies      
Not only is it like a totally different language than Perl 5, the most critical problem is that it simply wasn't popular.

All it would take is buzz... and millennials. Lots of millennials.

Generally, products that are the most popular aren't always the best. Better to just accept that now, especially before you invest much time in the space :)

jandrusk 1 day ago 0 replies      
Perl has been trumped by Python. Perl would continue to fade into the sunset through attrition.
emodendroket 1 day ago 0 replies      
I feel like everybody who wanted a "better Perl" jumped ship to Ruby.
liveoneggs 1 day ago 0 replies      
this kind of advocacy is what it takes, along with a lot more stuff, to get adoption
biztos 1 day ago 0 replies      
This is one of those things where everyone who even understands the question is going to have an opinion, and the rest will too. I've worked with Perl professionally since 1995 and still do, which doesn't necessarily mean I know what I'm talking about but FWIW here's my best guess.

I think Perl 6 has not taken off because of three things:

1. Other options.

When Perl 5 really took off in the mid-late 90's, building much of the early Web as well as all sorts of business software (we used it heavily in biotech), there weren't so many other options.

For server-side things it was (or at least seemed) faster, easier, and much much newbie-friendlier to use Perl than the other "obvious" languages, C and Java.

Now there are a lot more languages to choose from, inluding ones that share Perl's original virtues of accessibility and "hackability." While some of these newer languages were gaining ground, Perl 5 was enjoying subtle improvements while seeming more and more dated.

We have large populations of potential Perl hackers who have, for good reasons, chosen to develop their expertise in other languages. They have little interest in learning the "new Perl" because they don't have deep knowledge of nor love for the "old Perl."

That at least some of the hot new languages (Go, Swift) have corporate backing with infinitely deep pockets may also be a factor.

2. Hiring death-spiral.

It's very hard to hire for Perl programming jobs these days. We older Perl hackers often move on (or up) and the young folks look around at where the excitement and the jobs are, and they see them elsewhere.

(Perhaps counterintuitively, there are also a lot of young programmers who prefer Java: maybe not much excitement there, but never any lack of employment.)

The fact that it's hard to assemble, grow or even maintain a Perl team means that it's harder to justify developing systems in Perl from a business perspective. On the one hand you have all the advantages your senior Perl hackers can list for you, and on the other hand you have the cold hard fact that the systems they build will one day be maintained by junior devs who wish they were using something else.

It should be obvious that this is self-reinforcing, and I think there are probably thousands of little Perl shops embedded in big companies where the managers have long been dreaming of a path away from Perl, while the senior Perl hackers reluctantly start to agree with them.

This ends up as Perl 6's problem, not just Perl 5's, because the same people who would usually champion the newest version of the language are busy keeping their Perl 5.x legacy systems alive with shrinking staffs and growing pressure to get off that train.

Also, it will be hard to get your management team to back a big push into Perl 6, because they will only hear "Perl" and remember how painful it was to find Perl people the last time, and the time before that.

3. Approachability.

Perl 6 is really cool and really hackalicious but also not super easy to get started with. Where even back in Perl 4 it felt like it was newbie-friendly, the only thing newbie-friendly on perl6.org is the butterfly logo, of which I am not a fan.

Something like the Go Playground[0] would be nice and might help spread the word. As would a story about what Perl 6 is better at than anything else.

As far as I can tell, cutesy "spokesbugs" aside, Perl 6 is presented as something for the Perl crowd. And as noted above, much of the Perl crowd is too busy for it.

A lot of languages get popular because they show you how easy and fun it is to do thing X in them, and you've always hated doing X in whatever other language. I'm not sure what that X would be for Perl 6, but I have a feeling it's something about the writing itself, which might be a hard sell, but I don't really see it being sold outside the Perl community.


Anyway, all that said I would love to see Perl 6 get some traction. I just have no idea where it's going to do that. Maybe if a super high-profile project appears that's all done in Perl 6? Maybe if a small but influential cult of AI hackers falls in love with it? Maybe if it out-Pythons Python as the default entry-level "big data" language?

Because of the reasons listed here, for this old Perl hacker "write stuff in Perl 6" is stuck at the way-way back of the backlog, and well behind at least two other "write stuff in..." stories.

[0]: https://play.golang.org

Datsundere 1 day ago 0 replies      
why would I use perl when I have python?
zeveb 1 day ago 0 replies      
From my perspective and I went through a years-long period of writing exclusively in Perl Perl just doesn't seem to have anything to offer me anymore. I resisted Python for a long time because Perl was so much faster, but eventually I switched because Python was much less a write-only language.

I've since switched to Go, because the way it handles static types is actually pretty awesome (for the most part there are edge & corner cases), and I find that my software is much more reliable in Go.

For my quick-and-dirty tasks I have Lisp; for my job I have Go: does Perl 6 offer me anything I don't already have?

IslaDeEncanta 1 day ago 1 reply      
Perl 5 is better than Perl 6, so why would I change?
jag2 1 day ago 1 reply      
ask the parrot.
zoffix222 1 day ago 2 replies      
Where did you even get a mention of moarvm for you to get confused about?

Sounds like you're making shit up just to be difficult. The giant button on perl6.org says "Rakudo is a compiler for Perl 6 code", it leads you to a page of choices, among which is a link to a binaries where you choose your platform.

It's like complaining that you have to use `gcc` when learning the C Programming Language and being flabbergasted to find there are multiple versions of it.

Seriously, this isn't rocket surgery.

DonHopkins 1 day ago 2 replies      
1029102901 1 day ago 2 replies      
AzzieElbab 1 day ago 0 replies      
Because pearl is not supported to make sense
eptcyka 1 day ago 1 reply      
Because the industry is slowly moving away from write-only languages.
kahrkunne 1 day ago 0 replies      
I thought we were finally done with perl. I know I was overjoyed when I could finally get rid of this horrible language in favor of python. Perl was a mistake.
Ask HN: Have any companies on here used Triplebyte?
22 points by aml183  1 day ago   1 comment top
wayn3 14 hours ago 0 replies      
They only recently started working with non YC companies. => Talk to YC grads.
Ask HN: Overwhelmed with learning front-end, how do I proceed?
250 points by PythonicPro  2 days ago   131 comments top 62
carsongross 2 days ago 8 replies      
OK, I know a lot of folks are tired of me talking about it, but if you are interested only in UX functionality and not necessarily in learning the latest trendy tools, I have built a library that gives you a lot of what the other front-end libraries do at a fraction of the complexity:


Basically you use HTML attributes to drive AJAX requests, and render your HTML on the server side. (There are actually very good theoretical reasons for doing this[1][2].) It is built on top of jQuery and dovetails very nicely with it.

There are lots of examples here:


And, again, if you are looking for simplicity in front end development, while still building a modern web application, I think it's a good option. There is no tool chain beyond what you currently use for web development.

[1] - http://intercoolerjs.org/2016/01/18/rescuing-rest.html

[2] - http://intercoolerjs.org/2016/05/08/hatoeas-is-for-humans.ht...

shados 2 days ago 2 replies      
Frontend at this point is a problem just as much as backend is a problem... And I don't mean backend as in "I built an MVC app with Rails". I mean JVM + Data store + infrastructure with virtualization + APIs + caching + queues + blah blah blah.

You don't wake up one morning going "I know some java...lemme learn Dynamo and S3 and SQS while learning dependency injection and Spring while figuring out what this SQL thing is about on Postgres...or should I use MySQL? Oh and there's Maven and Puppet and all the deployment tools...

That would be totally insane.

Look at frontend the same way. If you're trying to learn react and babel and ES6 and webpack and eslint and flow/typescript and NPM/Yarn and Node while looking into Service workers and websockets at the same time as reading a book on Functional programming, yeah, that's overwhelming.

Pick one thing and a time and go for it. If you're a backend developer and getting overwhelmed by frontend, it's because you're attacking it from a "Frontend is an atomic small thing" perspective, as opposed to being an ecosystem just like on the backend. And that won't work.

Klathmon 2 days ago 2 replies      
Is there any specific reason you are trying to use Vue?

If not, I'd recommend taking a step back, look at the few most popular options, and start with the most "blessed" config/boilerplate with no custom changes.

Like for react, use the create-react-app thing. Don't add anything on top aside from what is needed for the bare minimum of your project you are learning with.

Feel the pain points, feel what you struggle with, make notes about what works well. Then when you have a minimum viable product, start adding "stuff". Maybe try out redux, or mess with webpack yourself, try out that library that you see people on HN bitching about all the time to see if it's really that bad. Just start fixing the worst issues you had with the language/stack, and understand how the additional tooling solves (or doesn't solve) your problem.

Don't worry about size, number of files, performance, how messy it is, how over engineered it feels. Just make something first. You'll have plenty of time to learn that other stuff once you have a good foundation. And at that point you'll know to leave out x, or that y isn't over engineered, it's just engineered.

Rome wasn't built in a day. Expect your first few things to be complete trash, and don't worry about it.

sssilver 2 days ago 3 replies      
First, it's important to understand that most of these technologies have emerged and became popular because they solved real problems. In this regard, it may be difficult to "learn" them, if you never had those problems in the first place. If you feel comfortable learning jQuery, learn/use it enough to run into its weaknesses -- it won't take long. Then moving on will feel more natural and will feel less like effort and more like pain relief.

Second, I would be more focused on obtaining fundamental programming skills, like the ones you get taught in academic CS classes, and less concerned about [insert-your-shiny-"new"-js-paradigm-here]. The reality is, pillars of programming haven't changed drastically since 70ies, and if you're very comfortable with the fundamentals, everything else becomes less a matter of understanding, and more a matter of memorizing ("oh so this is how you do fundamental thing X in this particular framework").

Finally, as others have rightfully noted, focusing on one thing at a time makes learning way more efficient. It may seem counter-intuitive, but learning ten things consecutively will take way less time and energy than learning them in parallel.

oelmekki 2 days ago 2 replies      
The single most important advice I could give you is : take whatever path/framework you want, but take it seriously.

Javascript has a long history of not being taken seriously. In early 2000, it was considered a malware language, that you should disable. Then rails started doing cool things with animations and ajax, and developers started getting into it, but only by swearing they did not want to waste their time on it. I think that's the reason why jQuery got so much success: its promise was that you could use cool js features without having to learn much about it. Personally, my big "oh wait, this language is cool" moment has been when I discovered mootools. It was not unlike what es5/6 is nowadays.

And then, there has been this whole "javascript fatigue" thing. My analysis on this is that the same phenomenon applies: backend developers know they need to learn js but still do not consider it a "real" language and are overwhelmed by the amount of things they have to learn.

By simply considering javascript is just as important as your backend language, and deserves as much efforts from you, it should not feel any more difficult. Oh, btw, css matters too :)

itamarst 2 days ago 1 reply      
1. Don't try to learn 5 technologies at once. Pick one.

2. As a first pass, don't overfocus on the details, focus on the conceptual model: what are the key abstractions, how do they work and how do they interact?

3. Read a book, not just tutorials. Harder for newer frameworks, but got to be something. A decent book will give you a much deeper view than a tutorial, helping you with item 2 on the list.

4. Start looking for common themes that connect to existing knowledge. None of this is really new stuff; front end frameworks inherit ideas from GUI frameworks, and from backend web frameworks. I've written a bit about doing this for programming languages (https://codewithoutrules.com/2016/03/10/compare-contrast/), but same concept applies elsewhere: everything is variations on a theme, basic functional requirements forcing particular forms.

pacnw 2 days ago 0 replies      
Ok, I read through this whole thread and with the variety of recommendations for frameworks and tools mentioned it will make your head spin for sure.You mentioned Vue, so I will talk about Vue. Vue will get you there in terms of any complexity you may need. React, Angular, Ember, etc. will also get you there, but you mentioned Vue so let's stick to that.Wrt boilerplate templates: just use vue-cli to generate the project, there are not even that many options, and you get hot-reloading, test harness with it automatically.

To keep it real, I imagine your SPA will need different sections of the screen to show: a header, some kind of menu (sidebar?) and a main window that shows what the user is working with for the moment. How do you get the main window to show the relevant content if the user clicks on a menu item? If you solve that (hint: vue-router), you now understand one of the main benefits of using a front end framework for managing components and avoiding round trips to the server.

Next challenge: create a nice page that has, let's say, two different panels. One panel shows a list of items, and the other panel shows some details about the currently selected item from the list. How do you: 1. show the details about the selected item in the second panel? 2. If you change the item name in the detail panel, will it update immediately in the list above? Solving for this will satisfy your curiosity of why a state management solution would be useful, and you'll be led to ...... yes, Vuex!

These 'challenges' would be enough for a good 90% of common web apps/SPAs, with navigation and master-detail UI.

Just one piece of advice, pick one current framework, learn it by solving these common problems, and you'll be on your way. Source: I have built and rebuilt a complex system in Angular, Meteor, React and Vue (I do NOT recommend that kind of churn, but keep in mind each framework have had significant shortcomings over that past 2 years which made client-side state management difficult).If you take the intellectual route and try to do all this with vanilla JS or solely jQuery, be prepared to spend a while before becoming productive (depends on your app's complexity of course).

judahmeek 2 days ago 0 replies      
Here's a fun flowchart regarding React: https://github.com/gaearon/react-makes-you-sad
fuzzythinker 2 days ago 0 replies      
Learn by doing. It is hard to learn by just reading. You should have something in mind that you want to build. If you don't or can't come up with something, maybe you can build an internal tool your company may find helpful, or talk to friends to see if they need something you can build. Once you have an idea, then you have a goal.

Since you know jQuery already, that makes it easier to start. Start building it with jQuery first. Then look for a component or two for which states get a bit complicated. Replace the jQuery code in that/those component with Vue. You're already ahead since you've decided to use Vue. Many people are not even sure what JS framework library to use. Vue is an excellent choice, by the way.

This way, you have a reference to compare to. If you like Vue code better, you can think about if you want to replace all or most of the jQuery code. If not, then you can ask why. This may lead you to a deeper understanding of Vue.

dcwca 2 days ago 2 replies      
Ask yourself if you're building a website or a web application. The main difference in my mind is websites are static documents at the end of the day, allowing users to read text, while web applications are dynamic and often allow the user to modify the data in the system.

If it's really a web application you're after, then get ready for some complexity. The state of the art has progressed significantly in the last couple of years, to the point where modern web applications are as complex as iOS and Android applications in terms of the number of moving parts. To add to the confusion, there seems to be a large number of framework and library choices on the web, where with iOS and Android the vendor largely controls the environment, and the tooling choices are more obvious.

Try to see the big picture as you're looking at all these tools, and recognize that they're largely interchangeable. We can see a common architecture emerging, where the latest versions of all the largest libraries have coalesced around the same basic patterns and ideas:

- Web Components (Angular 1 directives, Angular 2, Vue.js, React, Polymer, Preact, etc)

- State management (ui-router, Redux, MobX)

- Network interface ($.get, $http, restangular, W3C fetch())

- Local storage & persistence (W3C localStorage, ngStorage, react-localstorage)

- Build system (webpack, gulp, grunt, jake, make, npm scripts)

- BDD Testing (Jasmine, mocha, Karma, Chai, Enzyme, Jest)

You really can't go wrong learning any one of these libraries. Even if you aren't using the same library a year from now, you'll understand the application design patterns and JavaScript, two skills which aren't going away any time soon.

Hopefully that helps clarify things, and good luck!

olakease 2 days ago 3 replies      
Backend developer here.Everytime I need to create some sort of rich UI I discovered that the last framework I learnt was "no longer valid". Happened with JQuery, Knockout and now Angular 1.

My feeling is that frontend development is overcomplicated/overbloated. Specially with the big players (Angular, React). Lucky me, I found my way with riot.js. Simple, elegant, lightweight and fast enough. You don't need a lot of complicated boilerplate, nor learning a new template language or syntax.

natecavanaugh 2 days ago 0 replies      
First, I would say you need to understand your own learning style and what methods work for you. For me, practical beats theoretical any day. Everything I've become good at, I almost always had tried learning it from reading books or tutorials online, would get bored and give up. It wasn't until I needed to use the tool to get some greater purpose, then I could use the draw of having that tool solve one of my needs, and had a reason to not get lost in the details until I needed them. So read up on the general types of problems they're commonly used for, and get an understanding of what they might be able to do, and if something sounds like it could help towards solving a problem, go after it.

Also, people like to shame you when you're learning, as if using "training wheels" will keep you an intellectual cripple. I love training wheels. They get me productive enough to keep me interested, and I can always dig in deeper when I want to/have time, etc.But don't be afraid of just getting the job done. Then go back, learn from your mistakes, and iterate.

Meanwhile, you're building real experience, familiarity with solving real problems, and learning the internals of the tools you're using, while the people arguing over the right editor to use, the right framework, the right generator, toolkit, bridge, etc, are all still posting on medium about how some new programming language/paradigm will solve all of our woes.

At the end of the day, whatever helps you understand it better, go for it, no matter all of the "should"s and "shouldn't"s people will try to burden you with.

matt_wulfeck 2 days ago 0 replies      
> Everything I try feels messy and strange, leading me to a lot of frustration.

It appears you've learned to program but have not yet learned to learn. Like learning to do anything new, you start with minimum viable product. Let it be messy, buggy with edge cases, etc, just be completely persistent until it works and then build from there. Then do it again and you'll do it better and faster.

You MUST persist.

Don't worry about using anti patterns. I know this is somewhat controversial, but in the beginning shipping with antipatterns is better than someone who gave up. Besides, a diligent engineer spends their lifetime perfecting their craft.

I say this because when I was learning I was completely debilitated by fear of doing it "wrong" and setting myself up for failure in the future. If you're actually interested in becoming a better engineer this simply will not be true.

Lastly I leave you with a quote:

Nothing in this world can take the place of persistence. Talent will not: nothing is more common than unsuccessful men with talent. Genius will not; unrewarded genius is almost a proverb. Education will not: the world is full of educated derelicts. Persistence and determination alone are omnipotent. [Calvin Coolidge]

jdavis703 2 days ago 0 replies      
In this day and age I think you should use vanilla JS and not jQuery. But I don't think you need to use a MVC or "view manager" framework for simple projects. My personal standard is when I start writing a bunch of code to track state means I need something to do it for me. But if we're just talking about some basic AJAX forms that send to a server, these frameworks are overkill.
opvasger 2 days ago 1 reply      
Try the Elm programming language - it should save you the trouble of dealing with the explosion of JavaScript frameworks. It is designed with learning in mind, and should provide a really direct path to high quality front-end code.


elviejo 2 days ago 1 reply      
Front end development is a total mess. The fact that you have to know: html5 , css3 and JavaScript with all the different frameworks is ridiculous....

For me the sane solution is: Elm-lang.It's a total delight, similar to Haskell but easier plus the elm architecture makes developing web applications very simple...

I'd say that Elm's biggest feature is architectural integrity...

bootload 2 days ago 0 replies      
"Everything I try feels messy and strange, leading me to a lot of frustration. It seems very over-engineered."

Do you remember the google front page in '97? ~ https://duckduckgo.com/?q=google+1997&iax=1&ia=images Concentrate on the real problem, design (this is where you should start) a simple interface. Iterate as @itamarst suggests ~ https://news.ycombinator.com/item?id=12882850

scaryclam 2 days ago 0 replies      
I'd suggest getting a solid understanding of the core front end technologies: HTML, CSS and vanilla JavaScript. If you can't build reasonably complex websites without the crutch of a framework or a more complex tool chain, then you've probably missed out on getting the basics right.

You should also learn about UX and design. I met a self appointed frontend developer recently, who didn't have any understanding of what a good designer does. This led to some really horrible conflicts where core design decisions got ignored (the developer thought they knew better) and the end result was a mess. Designers are your friend when working as a frontend developer and will help to make sure that the end product is both well built and actually useful for the users.

Read: https://gdstechnology.blog.gov.uk/2016/09/19/why-we-use-prog...

If you're building frontend your job is to make sure that your audience can use it. There's no reason not to learn and use fun tech, we all like play and make our own development lives easier, but your users must always come first.

If you can do all of that then you'll be able to do a pretty good job as a frontend developer. Picking up the latest and greatest frameworks is really quite easy once you understand how JS and the DOM works. You'll have the added advantage of being able to critique new tools as well.

gotiger 2 days ago 0 replies      
I'm on same boat. I have been mobile developer for 3 years and I'm on front-end web for last couple months.

This helped me a little: https://medium.freecodecamp.com/a-study-plan-to-cure-javascr...

And have some laughs: https://hackernoon.com/how-it-feels-to-learn-javascript-in-2...

throwmenow_0139 2 days ago 0 replies      
Hello PythonicPro,

I'm currently using Vue.js to do some projects and can explain you everything you need to get started - it's a great framework and doesn't hide too much Javascript and emphasizes POJO (Plain old Javascript objects). I'm convinced that no one here can help you without investing more time than searching for their favourite links. If you don't mind, leave an email address in the comments.

Read about MVVM (Model-View-ViewModel), because this is the design pattern used by Vue.js, I assume you already know about MVC if you did backend programming. If you're unsure about MVC in the frontend try to build something simple with jQuery using Models, Views and Controllers. I did this in the past and it's helpful to understand the problems of SPAs that we're trying to solve. I don't want to repeat everyone's comment, but you should be aware that the abstract concepts and fundamentals are more important than the frameworks you are using, I guess you already know that.

I can't guarantee you that I have enough time to explain everything thoroughly, but I can assure you that I can give some helpful directions.

eiriklv 1 day ago 0 replies      
(cross-post from https://news.ycombinator.com/item?id=12886968)

Take a step back and focus on JavaScript the language. Really learn how things work. Then take a step even further back. Learn more about data structures, about abstractions and how to think declaratively vs. imperatively. Rinse and repeat for the rest of the stack.

That way you'll have a solid foundation to build on top of. At some point you'll start to see patterns, and that all the "new" things are just incrementally improved materializations of patterns and concepts that have existed since way before the web was even thought of.

Spend most of your learning/experimenting time on fundamentals (timeless). Learn actual implementations and specifics when you need to, just in time. Avoid learning specifics (lib/fw) just in case.

Source: My own personal experience + the very insightful experience of teaching classes in JavaScript and React the last two years.

chrisweekly 2 days ago 0 replies      
Read and follow "A Study Plan To Cure JavaScript Fatigue" by Sacha Greif.https://medium.freecodecamp.com/a-study-plan-to-cure-javascr...

FE arch: mountain of coal.Sacha Greif: time + gravity.His post: diamond.

acemarke 2 days ago 1 reply      
Got some pointers for you. First, I keep a big list of links to high-quality tutorials and articles on React and related topics, at [0]. As part of that list, I have a page called "Basic Overviews" [1], which has articles that try to help clarify what these various tools are, how they fit together, and what you would use them for. There's also a couple articles in that section that give advice for how to tackle learning front-end stuff, and not be overwhelmed.

As for React specifically, there's an official tool from the React team called Create-React-App [2]. It hides the details and complexity of project config from you until you're ready to tackle them yourself, and lets you focus on just writing the app. Meanwhile, the React docs were just revamped and improved [3]. There's also a great community called Reactiflux on Discord, which is a set of chat channels dedicated to talking about React, Javascript, and React-related tools [4]. It's a great place to hang out, ask questions, and learn.

Finally, part of what's going on here is that people are trying to write highly complex and powerful applications in the browser, not just "pages" with some interactivity. Complex applications mean some meaningful amount of complexity in the project setup. These tools are basically the web equivalent of a C++ compiler toolchain and standard library. So, there's several aspects here: the tools are somewhat big, the libraries are sophisticated to enable you to manage your application's complexity, and your own app code is going to be more than just a couple click handlers.

The other thing to remember is that you don't have to use everything all at once right away. Focus on learning one or two tools and concepts at a time.

Hopefully this helps!

[0] https://github.com/markerikson/react-redux-links

[1] https://github.com/markerikson/react-redux-links/blob/master...

[2] https://github.com/facebookincubator/create-react-app

[3] https://facebook.github.io/react/

[4] http://www.reactiflux.com

dmak 2 days ago 0 replies      
Hey, I've been managing 3 single page applications in the last 3 years. I could breakdown what you need to get started, and answer questions along the way. We can hop on Skype or Google Hangouts. If you're interested, contact me at dmak [attttttt] moneytree.jp
jodoherty 2 days ago 1 reply      
I would recommend you start by building out a non-trivial project using the tools and technologies you know (jQuery), but try to do a single page application that calls services via RESTful APIs. Bonus points if you can avoid hash urls using the HTML5 History API.

If you're not familiar with the standard Promise API and ES6, add babel and the core-js shim. This gives you things like block scoped variables (let/const), arrow functions, and the new class syntax. Start here. Most new frameworks and tools expect you to know modern JavaScript.


Eventually you'll want to start breaking apart your code and organizing it by responsibility/concern. You'll want to use ES6 modules and a tool like WebPack to resolve and bundle your modules all up for production. This also means learning how to configure WebPack to transpile your ES6 code using babel.


Now just focus on building out your project and cleaning it up. Maybe deploy it so real people are using it and you can get some feedback.

Once it's been out there and people are using it, plan a major new feature change or addition. This is where you might start feeling the pain points that are addressed by modern libraries and frameworks. When you do, start researching things like Vue.js, React, Redux, Angular 2, etc. Pick one and migrate/refactor your existing code into it before attempting anything new.

If you follow this approach, then your learning will be needs driven and practical, which keeps it from becoming too academic and uninteresting.

pknerd 2 days ago 1 reply      
>Ask HN: Overwhelmed with learning front-end, how do I >proceed?

Stick with jQuery || Native Javascript. Others are not doing something which you can't do with your current experience.

zerognowl 2 days ago 0 replies      
Frontend development has come along leaps and bounds since the days of document.layers and MSIE6 alert() debugging, it seems to be slowly coming out of a renaissance period lately as many devs have reached a consensus that they are spoiled for choice and now all that's left to do is, well, build.

There is this trend of developers feeling just as you described: overwhelmed. But rather than feel that, I try to embrace it. Like anything on the web, if you're not building on strength, then you must be in it for other reasons, like trying to impress employers, or trying to learn code because apparently it pays the bills better than other gigs.

I would start small, and treat everything like an experiment. If an experiment works well, you can build on top of it, and import what you learned from experiments into full blown (hopefully paid for) development.

I sometimes have to remember to use <em> instead of <b> but only because I didn't think such things were above me. Indeed it's a miracle a visitor to your site can even read the content with the temptation that exists to include another slider widget, or inaccessible web component.

KayL 2 days ago 1 reply      
If you don't have strong native JavaScript skills. Improve it first.

And then, let's say you picked Vue.js. Googling MVVM and learn about the basic concept from your best backend language. (Reading as much as you can. Some good articles are written in other programming languages also.)

And then, starting to read source code as much as you can. I won't pick big projects. Just pick any sources you think you're interested and understand it.

After all, you will get the whole picture how the app should look like and why framework trying to do X & Y.

boyter 2 days ago 1 reply      
I'd recommend starting with mithriljs. The idea behind it is very similar to react for views. It's also vanilla JavaScript so you will probably have an easier job learning it.
kleigenfreude 2 days ago 0 replies      
One option is to eschew front-end and do to work for a large company where roles are so defined that there are jobs that truly are back-end. Pretty much anywhere else you go, even if the role is "back-end", there is a chance you'll have to touch front-end at some point.

I wouldn't suggest that, especially since you started off with JQuery.

If you don't mind probably rewriting everything and don't have models that are that complicated, you could take a look at Electrode. I've not used it, but the goal of their project was to hide the complexity of JS front-end: http://www.electrode.io/

Angular or Ember are opinionated frameworks that might be good to use if you can give up JQuery and just embrace something new. The following has an answer which suggests Meteor also- it's cool, but is a more specialized use case that might not be appropriate for everyone. Also note that the opinion on Ember being better than Angular is pretty biased- it really comes down to what makes sense and is comfortable: https://www.quora.com/React-Angular-Meteor-Ember-Vue-etc-In-...

However, if it just doesn't matter and you are just doing it to try to stay current, I'd argue to not jump to a new framework unless it makes things easier for you and your team.

There are benefits to using what is popular in the development community, more specifically in the pools of development talent you have available to your company.

But, in the end, what matters is your productivity. Are you getting more done now than you used to? If not- you shouldn't be doing it.

Aldo_MX 2 days ago 1 reply      
Frameworks like jQuery allow you to do DOM manipulation in a less painful way, but frameworks like Angular, React or Vue do their best to abstract DOM manipulation away. This is the reason you may feel overwhelmed by the learning curve, since a paradigm shift is involved.

I would suggest you to check the basics of Angular 1.5 first, just the fundamentals to understand the big picture and build a basic application.

The reason is because Angular is an opinionated framework which gives your project a specific architecture, so you can focus your learning efforts in appreciating the decisions that were taken for you and how the different pieces fit together.

Whenever you feel comfortable with the basics of Angular, you can start checking alternatives like React or Vue, which will feel less strange and over-engineered at this point.

JepZ 2 days ago 0 replies      
Advice? Try riotjs.com (at least read what it is about).

It gives you some basic structure, but is much simpler to understand than most frameworks/libraries, because you don't need all this router, dispatcher, whatever stuff, but can add it if you need it.

Experience? I tried some others before:

- Backbone (okay, but a lot of work)

- Angular (Angular 2 taught us to use something else)

- Ember (very opinionated, too much for my taste, hard learning curve)

Riot.js is my favorite since about 2 years and I will stick to it. It's small size is mobile friendly and in the worst case scenario you can maintain it yourself.

z3t4 2 days ago 0 replies      
Its like when ppl try sports, they buy all these tools, clothes, suplements and cool aid, and the same gear the pro uses. But you dont need any of that to grow some muscles and stay healthy. All you need is a text editor and you are good to go.
francasso 2 days ago 0 replies      
If you are just trying to learn UI development: try to develop a somewhat complex single page app without any framework (a GUI for a database for example). Don't do it as if you were just changing a document here and there with jQuery though. Try to approach it like a more typical UI development in another language (i.e. write your own mini component library that renders to the DOM, etc..)

By doing this you will see what problems you have to face, and the next time you see a framework you will catch up much more quickly on the good, the bad and how it fits.

pmarreck 2 days ago 0 replies      
Go to pure back-end. That's what I did, although I did it during the time when most sites still required IE6 compatibility, which was arguably more of a hair-pulling experience than you are dealing with.
breakingcustom 2 days ago 0 replies      
Posting this question on HN is just going to overwhelm you even more. Don't listen to the noise, everyone has their opinions that they are entitled to. Focus on the fundamentals!
vbezhenar 2 days ago 0 replies      
I suggest to avoid any templates. Start from empty configurations and add things that you need. Avoid blind copypasting, read documentation about anything that you want to add. It might take some time, but you'll have control over your application. Also you might want to start simple, using latest ES6 or TypeScript is not necessary, you can start with ES5, and then, when everything OK, migrate to ES6. Same with CSS/LESS, magnification, source maps, hot reload, etc.
arikr 2 days ago 0 replies      
What is your goal? To build something specific, or get a certain job?

Why is jQuery alone not enough?

slmyers 2 days ago 0 replies      
I was in a similar boat and I recommend angular2 using the CLI. The build process is totally abstracted and the nice thing about angular is that you're never really going to be wondering what router do I use etc, because the framework is full featured. Plus it's fairly intuitive. It will be more complex than a jQuery powered Web page, but I think these SPA frameworks assume you're trying to make a more complex application, ie if you can build the same thing using jQuery, then just use jQuery -- unless it's an educational exercise.
shermablanca 2 days ago 0 replies      
Are you in the SF Bay Area by chance? We're putting on a 2-day React & Redux workshop where you build a full stack e-commerce app. We developed this workshop after hearing similar feedback from students frustrated with the lack of tutorials and workshops that teach you how to build a real app with React. It could help you to wrap your head around how to use React in a production application. More details at https://universe.com/realworldreact
halayli 2 days ago 0 replies      
It takes time (few months) and plenty of iterations to create the mental map and learn the proper patterns.

I suggest to create a simple app and iterate/refactor until you feel comfortable that you got it.

Boilerplates are good but they do take away a lot of important concepts that you should learn.

I'd start with react, redux, redux forms, react router, axios and webpack.

Also keep in mind that you're inadvertently learning ES6 as you dive in. So I'd start with that first.

bastijn 2 days ago 0 replies      
in addition to all the great comments on how to start in this area I wanted to add that you shouldn't feel bad about yourself for being frustrated and overwhelmed. The frontend world is a mess at this point in time. There are many options with as many camps arguing about them. There is a large amount of framework over vanilla and most frameworks yet have to mature. You probably will make a wrong choice once or twice (who am I kidding, more than twice) and curse on the trouble it brought you. Two months in another tool or framework becomes the flavor of the day and the major headlines tell you to switch. You have to consider it, but always carefully decide if you need it (because chances are another one comes along).

My point is, the whole frontend scene is relatively immature. So are it's tools and frameworks. Angular2 solves major flaws in angular1. Yarn came to solve issues with npm. Gulp fixed grunt. Webpack fixed both. React... You get the point. Embrace chance. Hit your head once or twice and take the time to learn the most valuable lessons from it.

dpatterson2008 1 day ago 0 replies      
FWIW you could take a good read of: https://github.com/verekia/js-stack-from-scratch/ it's really good!
samayshamdasani 2 days ago 1 reply      
build mini-projects. I made https://enlight.ml - and although it's still a work in progress, it teaches small projects related to web development and ways to actually implement for knowledge of html, css, js, etc.

Let me know what you think! I plan to evolve it by building a codeacademy style interface for learning these projects...

etewiah 2 days ago 0 replies      
My solution to the problem of not knowing which framework to learn was to pick an open source product that I liked and learn the stack it uses.In my case I experimented with Discourse for various projects for about a year and as I result I learnt ember js and use it on almost all my projects now.
novaleaf 2 days ago 0 replies      
Typescript + React + Webpack.

Follow the quickstart here: https://www.typescriptlang.org/docs/handbook/react-&-webpack...

lightblade 2 days ago 0 replies      
Does the question implies front-end development now has a higher barrier to entry? It has always been told that front end has a low barrier to entry therefore attracting many people. It appears this is no longer true.
snarfy 2 days ago 0 replies      
I like this example of learning React without using React.


jamesmcintyre 2 days ago 0 replies      
One tip, Redux is great and is worth learning but if you want to curb the amount of boilerplate and anxiety-inducing added conceptual overhead look no further than mobx. And good news, after a quick search I found that someone has made it one git-command away to implement a simple redux counter on top of a fresh create-react-app template(https://github.com/mobxjs/create-react-app-mobx). Mobx is able to drastically reduce boilerplate and cognitive overhead while still allowing the flexibility to dive deeper and gain just as much granular control as you'd have with Redux. Also it scales well (although that shouldn't really be a big concern if you're just trying to learn how to build production react apps right now).
tribby 2 days ago 0 replies      
I'm answering this in depth only because I love vue and want you to eventually succeed at it.

if you are not a total beginner and know javascript very well, start with riot instead of vue. riot has fewer conceptual abstractions so it's easier to wrap your head around and doesn't require a complex build system. as a vue user, it will already make sense to you -- using single file components.

if you are truly a beginner:

don't start with javascript at all. start with HTML and CSS. this is how you'll learn about progressive enhancement as you begin to introduce javascript. (in production, you may need to satisfy tor browser i.e. noscript users, non-Google bots for SEO, richard stallman, etc -- so your site must function without javascript, or you're ruining the web. this is just my opinion).

good CSS, if you work on a team, is critical, and almost no one gets it right. use sass, a grid mixin library like susy, and autoprefixer to start. because your username is "pythonicpro," I am assuing you're a python user, and would recommend you apply to your sass the same sort of sanity that python applies to indentation levels. sass allows you to endlessly nest things. this is bad, and a common mistake. also, because python is a whitespace-y language, you might look at pug (formerly jade) for making your HTML simpler.

don't use something like bootstrap, or if you do, only use it for a day to understand the grid and then move to susy. grids are important. learn about grids in a book called "grid systems" by josef muller-brockmann. you will be disappointed by that book. learn to be disappointed by that book because it is a very good book and one day you will not be disappointed by that book. do not use flexbox for layouts or things will look weird as they render on slow connections.

once you get to javascript, you should probably stop using all javascript frameworks including jquery if you're just getting started. yes this means you'll have to type "getElementByID" and "requestAnimationFrame." there are worse things in life (like trying to use frameworks or complicated build tools when you don't know how and why they work). consider using ES6 (my recommendation) or typescript (many others' recommendation) for the javascript, because this is what the frameworks you'll eventually want to learn use. both es6 and typescript work with vue and react, but angular is typescript-only. consider strongly using gulp for babel, typescript, es6, autoprexfixer, sass, etc.

once you are comfortable enough with this stuff, start working on your design abilities. if you have any autonomy at all in your job, you have no idea how much easier it will be for your designers if you speak design. (this is why grid systems are so important). learn about typography, because that's most of what web design is. be smart about CSS em and rem units. be smart about the size of your font files: ask your designers, "have you removed all of the glyphs from the font file that aren't in languages we support?" look up why an em is called an em. learn about colors that are compliant with disability standards. learn about whitespace. read kenya hara's "white." be disappointed by kenya hara's "white." learn to be disappointed by kenya hara's "white." you're well on your way to pleasing your designers.

dsego 2 days ago 0 replies      
Yeah, who has time to learn? Just slap in some jquery, some ajax calls here and there. Why use templating when you can concat html strings. And pub/sub, who needs that? You can easily do an ajax call that sets a hidden field somewhere, and a setTimeout for some other "decoupled" module that is waiting for that value. Because front-end is easy if you are writing a big ball of mud. Good practices are for backend developers, because backend is serious programming with algorithms and shit. /s
k__ 2 days ago 0 replies      
I'd say, start doing some basic HTML, then CSS and then JS courses, if you don't know the basics yet.

Then, every framework does it's own thing...

I think it's the best if you start with something full fledged.

For example Ember, it has everything you need for front end stuff in one (okay with ember-data in two) place(s). Throw in a Bootstrap and I think you're set for 80-90% of the feature wishes you will encounter.

You get routing, data retrieval and rendering of DOM stuff with okay styling out of the box.

Back in the days (2 years ago) it was enoug to simply include the ember.js, ember-data.js and bootstrap.css and you could start writing a complete app.

xcoding 2 days ago 0 replies      
cel1ne 2 days ago 0 replies      
=== Intro ===

1. Read this: https://babeljs.io/docs/learn-es2015/

2. Use create-react-app or a webpack/babel/react boilerplate to built a little something. Ignore all the things you don't need in the boilerplate and don't try to optimise for production right now.

3. If you're comfortable with this, gradually remove the parts you don't need.

=== Node, npm and webpack ===

All of the tools are installed and configured using "npm install" which installs everything listed in a "package.json" in every project. You don't need to install anything globally except nodeJS to get "npm".

* You install all your runtime-library-dependencies also via npm. Ignore "bower", you don't need it anymore.

* There are a couple of different module-systems to split up javascript code ("requireJS", "commonJS" etc.) Just use the ES2015 "import" syntax. Webpack handles the rest for you.

* There are many tools ("gulp", "brunch", "requireJS") that bundle your javascript-files together into something for the browser. Most people use Webpack now, which is confusing to configure, but does everything you want.

* With Webpack you can just import/require text-files or CSS or images as modules in your code (see "import" above). Webpack will figure out how to serve them (as files, or inline with the HTML or else). It also does everything on-the-fly while you are coding, called "Hot reloading".

## ES 2015, ES6, ES7

* The JS world kinda settled on ES6 syntax / ES2015 now. But JS-syntax is rapidly improving and many people use additional plugins for "babel" (see next point) to enable them to have, for example, class-properties.

* Most people use "babel" for transpilation from ES6 to code that browsers understand, webpack does all of this for you with "babel-loader".


* "eslint" is generally used to format code and correct warnings. It is also installed by npm and run by a script in "package.json".

## React / Vue

* React brought back the virtues of functional programming to the web. If you use React, I'd recommend using it with the JSX syntax, which is enabled in the boilerplate by default. There is also vue.js, which seems to be better in various points. I don't like it because I prefer JSX, but it doesn't really matter for the beginning.

* Many people don't like react because it's too big. I wouldn't really care about that if you don't build for production now. There are a couple of improvements like tree-shaking (removal of unused code) that are around in the corner as well.

### State / reflux/ redux

* There is a war going on about how to best organise your code and your logic. There is "redux", but also stuff like "mobx". Just try anything you want for the beginning and see how your thoughts involve.


* There is another war going on about how to do styling. There are various helpers like SCSS and SASS that provide improvements over CSS. These processors are usually run by "postcss" which, in turn, is also run by Webpack.There are also various CSS-frameworks and the possibility to just write your CSS inline with the React/Vue code you are producing.

I personally would recommend "tachyons.css", because you won't need any other framework, nor postCSS, nor SCSS anymore, but it's all your choice.

dylanhassinger 2 days ago 0 replies      
build something very small. like a simple compound interest calculator, for instance. push it to github. blog about it.

then build something slightly larger

dccoolgai 2 days ago 0 replies      
Get on the list at simplestepscode.com Program specializes in helping you past the overwhelming parts of it.
bootload 2 days ago 0 replies      
this article really answers your question on how to proceed: "Advice to Aimless, Excited Programmers" ~ http://prog21.dadgum.com/80.html
chrischen 2 days ago 0 replies      
For React true truecar/gluestick.

It separates the boilerplate so you just focus on the application code.

psadri 2 days ago 0 replies      
make it work, make it not crash, make it fast, make it pretty.
6nf 2 days ago 0 replies      
Wait for wasm
simion314 2 days ago 0 replies      
One of the problems that must be solved one a larger project is that you want to put your code in many small files,like put each class in it's own file (similar to how you would do it in other languages) , because you do not want to import each small file you need a tool that will merge them in one big file and for production maybe also minify it, also you will want source maps to be generated so you can debug your code. So to solve this problem in larger projects you need a tool, I am not familiar with all tools that exists to solve this, the project I am working one uses gulp (I did not made the choice so I did not done the research why gulp was the best solution then, and now something else may be better)

Other problem in big projects with jQuery is caused by the fact that data and UI are combined(what I mean is I often see data set as attributes on UI elements ,hidden fields with data in it), this can be solved if you use jQuerry better though, if your UI is not very dynamic I would continue generating it in server side but if you want something like an infinite scrolling list, or a very huge list then it is more smouth to implement it on client side and implement some tricks to have it work efficient(react would work better in this case then jquery and maybe you can find a good component that you can use),React is used for UI.

Some people compare angular1 with react, angular is a full framework it contains a lot more, like translations support, ajax support,routing , If you want my opinion here it is, angular templates vs react : reactis pure JS , you can use JSX and you should use it but have a look at the generated .js files, when I started I did not use jsx so I can learn better what actually happens. Angular templates feel to me as magic, there are no generated js files, the templates are compiled at runtime, I am sure eval is used too, in case of errors if you are lucky you get a printed stacktrace (not a real one)) if there are other errors you get a generic error message with a link to a generic solution and if you are not lucky nothing happens, no errors, no application loading. If you need to do something more complex you will have to get your hands dirty and have a look under the hood and maybe use the $compile. Also react can be used in existing jQuery projects, I have worked on such a project where we migrated some components to react and keep the rest using jQuery. If you like languages like C#, AS3,Java then I suggest trying TypeScript , TS works great with React.P.S. I am not a person that tries tools, frameworks and the latest shiny thing, I am working on web projects that were already started, so I seen what problems and what solutions we faced, until some of the solutions get standardized then there will be more alternatives, you will have to identify the problem in yourproject, then try to find the simplest solution for it and also try to not bet on the technology that is at the end of life(it is not easy)

Ask HN: Most overhyped technology of 2016?
17 points by kirillzubovsky  20 hours ago   32 comments top 10
DigitalSea 20 hours ago 3 replies      
Virtual Reality.

As someone who has tried HTC Vive, Oculus Rift, Playstation VR (I own PSVR) and even Samsung's foray into VR via its flagship Galaxy phones (S7 Edge) I would have to say that at present, it's still overhyped. The technology is so new that most companies are experimenting and finding their feet.

As cool as VR is, the cool factor wears off very quickly when you realise that screen technology hasn't quite reached the point where VR can compete with a 4K monitor on a gaming PC or even the level of immersion of a gaming console on a TV.

sharemywin 19 hours ago 1 reply      
I'm too old...

1. Microsoft awesome way cheaper than apple

2. Amazon .. None of my friends will ever buy anything over the internet...

3. Google Cool..but nobody will click on those tiny ads.

4. Facebook kinda dumb why not use email.

5. Twitter the dumbest thing I've ever heard of

6. Uber seem useful but I'd never used it.

7. AirBnb just plain creepy...

8. snapchat, Instagram, tinder ... don't you already have facebook?

I would take my predictions with a grain of salt... but I don't really get AI bots? Sure they could work someday just not sure how you get a break out company from it.

romanovcode 10 hours ago 0 replies      
In my opinion it's Javascript. Everything is javascript now and I see it as step backwards.
wslh 17 hours ago 1 reply      
Private blockchains: everything there could be built before Bitcoin. It can be just replaced with fintech in general. Other technologies like VR are easy to understand even if they fall short.
flukus 20 hours ago 2 replies      
Everything Elon Musk. Even the good stuff (power wall) is over hyped, he's a walking hype machine.
Yxven 13 hours ago 1 reply      
From a web dev perspective, I've heard a lot about React lately, so I learned it. I'm not saying it's bad, but I expected it to do a lot more.
baccheion 14 hours ago 0 replies      
Virtual reality (and augmented reality), self-driving cars, bots, internet of things, assistants (Siri, Cortana, etc), Apple Watch, bitcoin..
almostkorean 7 hours ago 0 replies      
Chat bots. Still don't think I've heard of one that is actually useful.
joeclark77 17 hours ago 0 replies      
"Deep learning" and virtually any other kind of "data science". I teach classes in analytics and I think ninety percent of what people really need is better understanding and visualization of the simplest statistics: sums, averages, counts, time series. Fancy statistical algorithms have some applications for example in fraud detection, but for most business people I think a great dashboard that lets them visualize patterns with their own two eyes is much more robust and useful.
DrNuke 20 hours ago 1 reply      
Big data where big is volume, as in the mainstream. Influencers do not know statistics, do they?
Ask HN: I need advice, Mid-life crisis
13 points by alexhakawy  17 hours ago   15 comments top 10
gamechangr 17 hours ago 1 reply      
There are a lot of people that are going to tell you to "never give up" and other platitudes.

I suggest you start with a goal in mind. If you want to be a developer, figure out what you can get paid to do while you learn. For example, I can work 20 hours a week as a "____" that will give me enough runway to learn to develop 20 hours a week.

I would not try to go from zero to employed as a developer in your situation. There will be 100 people who can say "I did exactly that" but there could have been 10,000 who died trying.

Get a smaller goal. Accomplish it and keep moving up. You will make it that way.

nicholas73 2 hours ago 0 replies      
The way I taught myself web development was:1) The excellent Udacity courses (might not be free anymore, but they offer 50% back if you don't find a job).2) Codeacademy for Javascript and jQuery.3) Then, you need to build a project front to back. Choose a project that there is a similar one online that you can learn from. My first webapp is: http://sudokuisland.com4) Google + StackOverflow

It took many months of work, but I definitely know enough to pick up whatever I need now for projects.

JSeymourATL 2 hours ago 0 replies      
> With no money and lack of training ...

There are remarkable number of Free Online resources, assuming you can dedicate the time to check these out, start here... > https://skillcrush.com/2016/03/15/64-online-resources-to-lea...

> I don't know how I'll succeed as a developer...

Here's some good food for thoughtfrom Greg McKeown on achievement > https://youtu.be/5TGMujw629Y

jfitbsidbfb 4 hours ago 0 replies      
Okay, first you should reach out to anyone you know for a job doing anything. References can get you past all kinds of roadblocks including DUI. At this point it's probably a given that you should stop drinking completely until you have your shit together.

If you really want to be a developer here is the path I wish I would have taken:

First, save up money. Unless you're in driving distance of a good school you will need to move. Find a state with a good loan/grant program and solid state schools. This is vital. Some states/schools will cover you 100 with loans/grants and others don't offer jack. Try to find a place that gives grants so you don't end up in a debt hole later. Apply like crazy until you get into one. Move. Immediately begin the residency requirements for that state so you pay in state tuition and get in state grants. If the timing is off, delay starting school until you have residency.

You can reach out for part time jobs through the school. This is only a good path if you're really serious, if you fail out you will be in a much worse place than you are.

Once you're in school you will be fine money-wise until you graduate. A lot of people would recommend community college but most have a failure rate of 90 and it will delay your degree a few years, something you might not want to do at your age. 26 is fine for college these days, I didn't start until 23 and I wasn't out of place at all

CyberFonic 16 hours ago 2 replies      
Seriously, a DUI is no big deal. 15 minutes in the naughty corner. So any potential employer who sees that as a barrier to employing you is probably too self-righteous for a pleasant workplace.

So what have you been doing since leaving school? 8+ years of doing _____ ?

Becoming a developer is not easy nor quick. The bootcamps only promise otherwise because they want gullible people to hand over a bunch of money. Being a freelancer is like having several bosses, besides you would still need to be able to to deliver in order to get paid.

Perhaps the best strategy is to get a job that you can do right now. Then in your free time you teach yourself a language for which there are lots of jobs in your area. Personally, I would think PHP is not a very good choice. I would suggest that JavaScript is a better choice since it is widely used on both the front-end and back-end. You can start learning it with nothing more than a good book and a recent browser with DevTools.

po-tee-weet 5 hours ago 0 replies      
Lots of good advice here. Are you in the position to go back to school? Maybe enroll in a couple classes at your local community college and see if you learn better in a structured environment. It's hard learning by yourself when you don't know what to learn.
eb0la 12 hours ago 0 replies      
Sincerely, not everybody needs to be a developer. The fun part of HN is there are very bright people here that - by chance - are developers.

You should be developing all kind skills (soft skills) that will last for life, not something linked to any technology that will be obsolete in 5-10 years.

This needs time; but since you have no kids and no job you are rich in that.

There is a lot of iliteracy in this areas. Maybe your road is here:

* Communication (how to send a message to different audiences)* Numbers (spreadsheets, budgets, business plans, etc.)* Automation (home automation, business process automation).

Maybe this helps :-)

joeclark77 6 hours ago 1 reply      
Can you join the military with a DUI? Man, if I were 26 again and single, I'd go for being a fighter pilot or maybe a submariner. Put off the "mid-life crisis" until you're actually middle aged!
FullMtlAlcoholc 8 hours ago 0 replies      
I know in the moment things seem very dire for you. Step back, take a deep breath, and know that countless other people have been in your situation or worse. We're humans and throughout history we've adapted to conditions 10x more horrid than you can even imagine.

First, the DUI. I'm also a member of the bad judgment club, but it has never impacted my career in any way. It's an expensive lesson, but depending on your conviction, the state you reside in, where you are in the legal process, etc., employers may never see it. Do your research. In San Francisco and for public employers, it's actually legal to inquire about your criminal history if it has no relevance to the job. Out of all the things you could have been convicted of, people will probably be the least judgmental about a DUI because the vast majority of people ahve driven drunk, you just got caught. Depending on your level of desperation and/or your personal ethics, lying or massaging the truth is also an option.

> I find it hard and give up at times because everything is so overwhelming and I don't have anyone to ask questions to because I have so many questions

Guess what? That sentiment is very common amongst software engineers. In fact, from my personal experience, devs have a higher level of impostor syndrome and professional inadequacy than any other profession, save for doctors and scientists, I've witnessed. I had the exact same feelings as well in the beginning. However, I funneled these feelings to add to my drive. I wanted to be a dev and it was going to happen one way or another. My first resume was filled with a bunch of BS, personal projects were conflated to contract work, a lot of the code in my github was copypasta, and all my references were just personal friends. I don't condone this, but the padded resume got me interviews. And actually going on interviews taught me how to better prepare and perform for interviews. After 5 or so, someone finally gave me a chance and I took all those lies on my resume and made them true.

For your situation, starting off as a freelancer isn't impossible but it's very difficult as freelancers generally get contracts/positions based upon their demonstrated skill and networking as it takes a higher level of trust to hire someone who you will never see work.

Despite your claims to the contrary, you do sound depressed and obviously overwhelmed, so taking care of that should be your priority. Following my example would works best only if pressure turns you into a diamond.

In your case, I would start by going to local tech meetups, networking, and finding someone who enjoys mentoring. There's a ton of people out there who enjoy educating noobs, especially hungry ones. Find these people in developer rooms on IRC, Slack, or Discord. Take a MOOC and meet up with a local study group of like-minded wanna-be devs. Like any other profession, networking is very important. Plus, they give out free food. If you're driving there, I'd steer clear of the free drinks :).

Also, just write code. Every day. Doesn't matter if it's shitty, doesn't matter if it doesn't work and you have to start over. Code the simplest, dumbest application and just get it working. Every day, add a little something to it, no matter how trivial. If you're ever feeling like giving up, let this motivate you: https://jenniferdewalt.com/index.html There are going to be times where you feel like you're not getting it or are just not advancing anymore and ramming your head against a wall. It's an illusion. I remember when I first encountered pointer logic, it just didn't register with me and no matter how many different ways I tried to understand it, I still couldn't manipulate pointers for the life of me. Then one day, without even consciouslly thinking about it, it all made sense.

That's what the start of programming, and life in general, is like. You may not see evidence of progress every day, but some concepts take time and subconscious/unconscious though to understand. And that eureka moment is totally worth it, better than sex. Oh, focus on javascript. You most likely won't be doing anything outside of CRUD work in php, if that.

fuqted 13 hours ago 1 reply      
>I thought I would want to become a Web developer because I saw it as a way out of poverty for me and my family but I find it hard and give up at times because everything is so overwhelming and I don't have anyone to ask questions to because I have so many questions plus I can't afford bootcamps.

Wow. Get ahold of yourself.

You're almost incoherent and begging for advice yet you were unwilling to give a serious answer to CyberFonic's post. You don't seem like a person that deserves helping.

Can you give me feedback on my website?
7 points by svanikss  19 hours ago   11 comments top 6
Guest98123 12 hours ago 0 replies      
What's the advantage of removing posts and comments after 24 hours? I'll list the negatives.

1. You kill all of your organic traffic. Google isn't going to index your deleted posts and comments, so no one is going to be visiting your site through search engines.

2. If I write a thoughtful comment, I can't return the next day to see replies, because everything is gone.

3. I can't bookmark interesting discussions, or share them on social media.

The voting system is actually a positive for Reddit/HN, since it separates the interesting submissions and comments from the low quality ones. That's the reason most people sort submissions and comments on Reddit/HN by 'Best' instead of 'New'. However, you took the 'New' section that no one likes to browse, and made it the only way to view your site. That's not good.

On a side note, the navigation drop downs don't open when viewing a post.

As for positives, you made a basic Reddit/HN clone, congrats. I'm not being sarcastic, the site is functional, it's easy to browse, and easy to read. You have the skills to make a successful project, you just need a different idea, or a much better spin on the Reddit/HN concept.

Mz 18 minutes ago 0 replies      
What is your concept for this? Why did you make it so it deletes everything after 24 hours?

I have been on email lists with no archive. It was done to protect the privacy of individuals. I have also run an email list with no archive. It was done to protect privacy and also to make it a live conversation.

What are your goals here? Are you just trying to "be different" for the sake of being different? I don't think that works. I think there has to be a purpose to the difference. It has to be done for a reason that creates value.

severine 18 hours ago 1 reply      
Some errata:

3) One a post is 24 hours old the post...3) Once a post is 24 hours old, it...

1) Anything illegeal1) Anything illegal

3) Threatens, harrasses, or bullies other users3) Threats, harassment, or bullying on other users

3) Removeal of content from the site3) Removal of content from the site

Some bug report:

I couldn't comment (I wanted to post a test spam comment), plus the "Subhears" and "About" links in the comment window wouldn't work.

IMHO needs polish and a sound spam strategy, but you may get an interesting feed if you get some traction, good luck and congratulations!

umedzacharia 19 hours ago 1 reply      
You need to briefly introduce your product first before asking for opinion. Others might misunderstand what you wish to achieve if you never claim about your mission.
asurachadtrot 18 hours ago 1 reply      
If the content will be deleted after 24 hours, what about the comments and all the discussion? I think this is not the case like Snapchat, which has been a chat/messenger app. Comments and discussion for certain contents needs to be preserve. If you are deleting the content after 24 hours for a clean interface, why not just remove the comment?
johnhenry 18 hours ago 1 reply      
Seems like this might be useful for people who want to remain anonymous... perhaps you could emphasize that?
Ask HN: Why is advice in Effective Java considered inappropriate for Android?
12 points by amolgupta  1 day ago   7 comments top 3
ng12 1 day ago 0 replies      
Android uses Dalvik/ART, which is an alternative to the JVM that has an entirely different set of optimizations for mobile. The most important one is that object creation is significantly more expensive -- if your code is allocating lots of objects it will significantly impact performance. This is why Android has the whole Recycler paradigm. My gut reaction is that Effective Java recommends a lot of heavy-OO practices which may impact Android performance.
jpetitto 1 day ago 0 replies      
I would say most of it IS appropriate. A lot of the advice is good for Java development in general, regardless of platform. Enums are one area that is hotly debated in the Android community, but there is no consensus on it.

Generally, I would say follow the advice in Effective Java, but be aware of some potential performance issues and how you can avoid/fix them if need be.

Edit: I noticed there is a chapter on serialization. This can be ignored by Android developers in favor of Parcelable.

mamon 1 day ago 2 replies      
Simple answer: because Android is not Java. It's a compeletely different platform, that just happens to use a programming language similar to Java to write programs for it's virtual machine.
Ask HN: Do you have a side project you want to sell?
158 points by ShaneCurran  1 day ago   140 comments top 73
pavlov 1 day ago 3 replies      

I made this last year, but failed to build on the initial audience... There's no revenue, so any offer will be considered.

The site was launched in August 2015 and got 79,000 pageviews in its first month. It also got some media attention which has given the site quite good search engine ranking: it is a top-3 Google result for most of the relevant keywords and search phrases.

I can also throw in the domain BabyNameCheck.com. There's no site there currently, but you could easily reuse the word check back-end from WordSafety... Just make a new baby-themed design and it could be a site that any parent would want to check out when trying to decide a name.

(Edit: Please don't post word suggestions in comments - there's a form for that on the site :))

westoncb 23 hours ago 1 reply      

A new form of text editor designed from the ground up for lower precision input devices (e.g. motion sensors, touch screens). Demo video at the url above.

I had issues using mouse and keyboard and gave up programming for six years until the concept behind this hit me. The actual software is an engine/framework for producing particular text editors (I figured I'd need to extend it to in a similar manner to Emacs, so that I could efficiently do, e.g., command line things too). It could also be configured to edit natural language documents for text editing on e.g. mobile devices and VR.

Editing and navigating documents is done, and there's a system built, but not yet attached to the UI, that is effectively a universal autocomplete: you give it an EBNF grammar for some language and it can list all grammatically valid options (that you could insert) from any point in a document. (I'm thinking of extracting and open sourcing that part. Not sure yet, though.)

I worked on it for a year and half, had an increase in medical bills and had to work morehaven't touched it much for a couple years. The copy on the website is oold.

nicolasiac 27 minutes ago 0 replies      
practido.com made with the dojo library. Is used by anyone who works with appointments (doctor, personal trainer, masseuse, etc) to manage their customers, appointments and invoices.
daeken 1 day ago 1 reply      

I launched this a few years ago with great success (>$100k in a single day), but despite the content being highly valued by the folks that have gone through it, I've had a hard time getting it in front of people. It's very profitable, but I just don't have the time nor the marketing acumen to really take it to the next level.

_jdams 7 hours ago 1 reply      

It's an e-commerce fashion store for sunglasses. It is very similar to a website that sells watches, freewatchcompany. The website is built off the Shopify platform, which is amazing. Products are dropshipped from China, and made easier using an app called Oberlo. I don't put any additional time into the website, though I should.

I advertised using Facebook/Reddit one time and made over $100 revenue in the first 24 hours (end of September), then got busy and haven't touched the site since. The site is pretty much setup and ready to go. You would have to run through the site's products and confirm that the seller on AliExpress is still in business and still has the product, but you can easily use Oberlo to wipe out all inventory and start over with sunglasses that you want to sell.

The sunglasses are all $0 to the customer, but we charge for shipping, which is where the profit comes from. The "free" brings the customer to the door. Typical sale is $10, with profit being between $6.50-$8.00.

Any tips to market the site or make it better are appreciated, as well :)

sideproject 23 hours ago 2 replies      
For those who might be interested, I run a website called SideProjectors.


It's a marketplace where you can post and sell your side projects to those who might be interested.

Also a few months ago, there was a post regarding "tips on selling your side projects"


Steppschuh 1 day ago 5 replies      

Well known API for adult content, hosted on the Google Cloud Platform. 0 seconds down time since about a year. Profitable.

ZiadHilal 1 day ago 1 reply      

Saas portfolio site for artists. Launched Jan 2013.0 Marketing.5k+ users (not sure where they are coming from, not sure if they are spam accounts)29 customers, but only 8 are currently active/billed.

Site exists on an AWS ec2 instance, mysql DB on RDS.Application is split into three Laravel apps:1) slidingboxes.com site2) admin panel to manage portfolio3) the portfolio itself

Stripe used for billing (via laravel Cashier package).

Ansible used to provision/deploy.Local dev via Vagrant.Source code managed via private Git repo on bitbucket.

spoiledtechie 1 day ago 1 reply      

Long running project. Team Management. Profitable with 100s of customers. 5 other sister sites, https://snation.com/, https://oarnation.com/, https://bullockingnation.com/, https://swimdecknation.com/, https://thatgreek.com/

bartoszhernas 1 day ago 1 reply      
https://freeyourmusic.com - songs mover across different music streaming services (eg. Spotify -> Apple Music).

It makes around 20k$ in revenue but I am focusing now on something else.

tspike 1 day ago 3 replies      

Lets people organize secret santa gift exchanges via e-mail, including rules about who can buy for who.

At its peak in the holiday season, gets about 10k uniques per day. Close to a million people have used it since launch in 2011.

Very easily monetizable - just provide affiliate link gift recommendations. I had intentions of doing this so many times but just never followed through and got bored with the project.

fredrivett 22 hours ago 0 replies      

FoundersKit The membership that saves you money, on the tools that save you time.

We launched this last year (it was the 2nd highest upvoted product of the month on Product Hunt: https://www.producthunt.com/posts/founderskit).

We've not focussed on it at all since launch, other than launching v2 based on some feedback. There's been no marketing efforts gone into it due to other focusses.

Looking to sell it on so we can give the users the best experience and focus on another project.

DM me on twitter (@fredrivett) or message me at fred [at] wearecontrast [dot] com.

Happy to give more details on request.

Achshar 23 hours ago 1 reply      

A cms for schools and colleges, lets students, parents, teachers, staff, etc log in and view/add student attendance, homework, assignments, datesheet, exam result, generate report card, view/manage student and teacher data, lecture timetable, send SMS/email newsletters, get different printouts with different set of data columns and a bunch of other stuff that I am probably forgetting about. I made/maintain it myself. I have 4 paying customers (schools). Revenue isn't much but whatever it is, it's all for myself, not have to pay anything forward other than hosting which is like 2500 rupees / year (37 dusd/year).

Jefro118 21 hours ago 0 replies      
I have a project where I "reverse engineered" this world class poker bot: http://www.slumbot.com. I have something akin to a "what would slumbot do?" API where you can enter the parameters for a heads up poker situation (hole cards, aggression, etc.) and get back a decision. It's far from perfect (and the code is a mess) but it worked surprisingly well in practice. I don't have time to work on it since I've started a new job and online heads up poker is kind of dead at low stakes but it might be useful to someone? Drop me an email via my profile if you're interested.
rafapaez 6 hours ago 0 replies      

If you are a developer, founder or wantrepreneur you should visit this site and learn from the ones that managed to build a successful business.

nodesocket 21 hours ago 0 replies      
Will entertain offers for my startup https://commando.io (Commando.io). Solid monthly recurring revenue. Contact info in HN profile.
arvind_devaraj 12 hours ago 0 replies      
Hyperbook (http://getbook.co) is for organising study notes and research information.

I used many bookmarking/note-taking/wiki software while writing my research thesis. Found limitations such as searching, linking notes and revisiting bookmarks. Currently it is used by many students, book authors and research scholars at top universities in India. . Maintained the site for two years without any revenue model. Want to maintain the free version for more years to come.

dignite 1 day ago 1 reply      
Attendize is an open-source event management and ticket selling platform.

The platform is licenced under the Attribution Assurance Licence so all installs are required to include the "Powered By Attendize" link.

Money is made by selling white-label licences.



jroesner 14 hours ago 0 replies      
In 2013 I built an app essentially for myself to solve the recurring problem of sales tax declaration in Germany. I have to do this quarterly or monthly and filling out all the official forms was painful and time consuming. So I came up with


An SPA with a simple yet accurate approach where you just enter 4 key numbers and are done in under a minute.

Due to my recent lack of time I was not able so far to adjust the App to the latest official API's, but that's doable. Open to offers.

sudshekhar 12 hours ago 0 replies      
I made a facebook chat bot for teaching people vocabulary. It asks you mcq-questions and responds back with yes or no. Can be used for any kind of single/multi-choice question quiz/game.

Have some people using it but I did't really bother marketing it too much. If somebody is interested, I can set it up for you and provide a backend to manage it yourself. Contact : sudshekhar02[at]gmail[dot]com

solomania9 1 day ago 0 replies      

An anonymous public blog where you pay per character with Bitcoin. Kind of like "The Million Dollar Homepage" for Bitcoin.

Got some press when I launched in 2014 (http://bitcoinmegaphone.com/press/), but haven't had time to build beyond the core product.

davidw 23 hours ago 0 replies      
I might consider parting ways with http://www.LiberWriter.com if the right person were interested. It currently has revenue and doesn't require much of my time, so it's not urgent for me. Someone who is willing to take good care of existing customers is important too.
presty 20 hours ago 0 replies      
A few years ago I co-started http://www.bitcoinpulse.com. I had to take it down last year after running out of time to deal with it, but I've recently brought back a simplified version.

While the traffic is insignificant at the moment, I'd like to believe that the brand is still strong and a small push could revive the traffic.

The twitter account https://twitter.com/bitcoinpulse has a small following - there are a few known people from the bitcoin community (but the vast majority seem like "bot" accounts).

It's written in clojure/script and hosted on heroku.

I'll take offers in bitcoin (obviously).Any interested parties can email me at info@bitcoinpulse.com

richardknop 14 hours ago 0 replies      
I have an uptime monitoring iOS app with bespoke Golang API and Django web dashboard to go with it.

I have discontinued it couple of months ago due to lack of time to concentrate on growing it.

Here's a blog post with couple of screenshots if anybody is interested: http://blog.richardknop.com/2016/05/pinglist-uptime-and-perf...

mitchas 18 hours ago 2 replies      

I made it March 2015 and updated it December 2015. It's been sitting since, with a few thousand people using it every month.

It hit the #1 spot on Product Hunt, and after that it was posted about on Lifehacker, Inc., Newsweek, and others.

I've recently tried to spend time updating it to monetize it, but I just don't have the time to work on it.

Right now I make $100-200 per month from AdSense, but I really have no idea what I'm doing with it so nothing is optimized with the ads - they were just kind of slapped on there. I know it has potential to make money, I just don't have time.

thegoodhands 1 day ago 1 reply      
I have two side projects for sale:

http://pagecull.com/ - Simple API to extract content from articles.

http://stilt.im/ - Provide Twitter support from Slack. Get mentions and DMs, send replies, view users and engage directly on Slack.

Buzz me on hello@thegoodhands.co for a chat

jonasvp 1 day ago 2 replies      

Written in Django, got some HN love a while ago - no signups for a while now but we have over 500 accounts that signed up at some point. About 20 sprang for the "Pro" version at $10/month. We even had a customer pay $50/month for an API version integrated directly into their site.

It's used to have your customers send their browser details directly to your inbox. Just point them at your site such as http://example.browser-details.com (CNAMEs with custom domain possible).

Created to scratch our own itch: previously, most of our customer would be hard-pressed to name their browser version so it was very helpful in development. Uses an external API to map the user agent string to browser make/version.

Interesting trades considered. ;-)

manuelflara 1 day ago 0 replies      

It's not making any revenue so any offer will be considered. It's a tool for helping inexperienced founders avoid common mistakes when starting a business with someone, both legally and in terms of making sure you're on the same page. Did it after getting very burned on a business venture because of this.

Got retweeted by some TechCrunch writer and also got to the frontpage (I think) of ProductHunt a while back. But I never got the time to get the product to where I wanted it to be (pay a $49 fee to get a good legally binding agreement based on the data you provided that you can just download, print and sign, and avoid problems and lawyer fees) nor market it properly (I also think it would be great to partner up with people who organize hackatons etc).

Built in Rails, hosted in DigitalOcean.

Email in profile

davecap1 1 day ago 1 reply      

Estimates fake Twitter followers for any account. Helps users find and block fake followers (coming soon). >100k visitors per month (45% returning). >1M users audited and over 500k users signed-up. Some revenue ($12k/year).

rackforms 1 day ago 0 replies      

Started in 2007, profitable every year since.

Web-based form and application creation software offered both as a stand-alone purchase or fully operational cloud subscription. Currently outputs as PHP or C#, can be extended to just about any other language/platform.

Very loyal users, often generating excellent leads for software consulting projects.

Currently finishing up code for several partnerships including offline forms, workflow integration, and several others. The hope is these partnerships could bring huge wins in existing markets.

Want to sell for a simple reason: every year I tell myself I'll start marketing properly, and every year I ignore that and write code instead.

It's time to place this project in the hands of someone or some organization that can grow it into the powerhouse it can be.

If interested let's chat!

milankragujevic 22 hours ago 0 replies      
It's not that I don't have time for it, I'm actually looking for a partner. I'm making a DIY Chromecast-clone Software solution, which you install on Debian and you can use our apps to cast stuff to your TV. Great way to repurpose an old PC, or test out a rPI, etc... It's meant to be semi-proprietary, and it's great for countries where Chromecast hasn't launched and 2nd hand ones go for as much as $100 which is a price of a refurbished Intel Atom PC :S. Mail me at (my username) (at) gmail (dot) com if you're interested and want a demo over Skype or something. It could earn money by showing ads on the screensaver or simply being pay to use...
sebringj 1 day ago 0 replies      

This is something I had to put together from scratch to cope with working across any type of backend programming language when I was doing ecommerce web apps to enable customers to edit their websites very easily and flexibly.

KitGUI is a content management SAAS that runs off of Amazon S3 for content storage and plugs into any backend. Editing is accomplished on the customer's website directly through a JS plugin. It makes a little money but more as an adjunct to existing products. I would also be open to working on this seriously if there was investor interest but there is a hell of a lot of CMS systems out there. It is very sturdy because it runs off of Amazon S3 for all the content serving.

amanmaan08 12 hours ago 0 replies      
I have an iOS app which is for internal organisations like they can chat among groups,create new groups for chat or individual chatting.Any one can create a meeting event and fellow folks can accept or decline that calendar event.Events get synced with device calendar.Very Clean UI/UX.
tomatohs 15 hours ago 0 replies      
http://devport.co - Portfolios for developers.

Supports uploads from GitHub, Websites, App store, etc. Automatically imports screenshots, titles, and descriptions.

Command line tool and documentation for creating your own themes. Built on Mongo, Express, Angular, Node. SailsJS. A few hundred users with a few thousand total uploaded projects.

wj 1 day ago 0 replies      
My answer from a similar thread a couple of months ago:


StartOpz (http://www.startopz.com):

Workday-lite (really lite) for small businesses. Individual components such as time-off tracking and expense reports all have sites on there dedicated to them individually that seem to do well. This covers all of them and could use somebody who has time to dedicate to (content) marketing.

Moviestud.io (http://www.moviestud.io):

Production management for independent filmmakers. The blog has a lot of epic length blog posts that can use somebody who can spend some time promoting them.

luc9787 20 hours ago 0 replies      
http://www.sysadminsoftware.comI made this tool like 5 years ago, to scratch my own itch as a I was a sysadmin in charge of securing thousands of machines. Those days are gone now and I currently have no time for this. The tool still works.To be honest I have not advertised it at all. I made sales only from people landing on the website through google search.
schjlatah 20 hours ago 1 reply      

I wrote a (free) simple super-basic photo editing app natively for iOS, Android and Windows Phone and have over half a million downloads. It has been a good resume piece, but I don't have time to work on it anymore.

I also wrote mrgr (also on mskr.co) a similarly simple video editing app for iOS. Less downloads, but I'd throw it in if anyone wanted to buy either.

illyabusigin 21 hours ago 1 reply      
I'm interested in selling http://www.seasonalysis.com. The site has been around for over 4 years and has a wealth of seasonal market data. We have subscriptions ranging from $50/month to $5000/year with several at the top membership tier. I think with the right marketing campaign and site content it could be quite lucrative but I just don't have the time.
Clubber 23 hours ago 0 replies      
https://metropolis.dysr.com - centralized, automated SFTP / GPG / Zip tool for Windows environments.
jdanon 22 hours ago 0 replies      
I wrote a very popular iOS animation program, FlipBook, and a friend wrote a companion Django-based website, flipbook.tv. Then I hired a group to write an iPad version, FlipBook HD. I also own all the legal rights worldwide to the trademark FlipBook for mobile animation software. I've just been too busy to update it, so I'd be up for selling it. You can reach me on twitter (@joshanon) or via joshanon.com (there's a contact form).
reddyonrails 23 hours ago 0 replies      

-- "Ask your friends and acquaintances to deliver your package on their route."

derwiki 1 day ago 1 reply      

Take a screenshot of a web site every day, optionally have it emailed directly to you as an attachment.

l1ambda 21 hours ago 1 reply      
http://agile-gps.com Scalable real-time, fleet tracking web app built on Node.js and RethinkDB. Contact info in HN profile. Uses RethinkDB changefeeds and websockets for efficient realtime updates to clients. RESTful, can handle many vehicles on a typical server, and stateless and horizontally scalable.
DrNuke 1 day ago 0 replies      
A bunch of .it domains with exhausted, failed or never started projects: bestapps (formerly a web magazine, now a never happening apps recommender system); databot (now a landing page for a local business); jobsud + jobcentro + jobnord (an empty job board, not starting because of a break up with the sectoral partner). Getting rid in order to focus on my primary nuclearresearch.net. Anyone going for the full batch of five .it?
sul4bh 1 day ago 0 replies      

Physical security assessment tool based on NIST and ISO standards.

Needs more work. I have some ideas if you want to discuss.

rograndom 23 hours ago 1 reply      

Managed WordPress updates, backups, uptime alerts, security scans, performance tracking, etc

I use this every day personally, but don't have the time / energy / resources to market it beyond my immediate network.

Currently manages ~100 "real" accounts and I've spun up 15k dummy sites on occasion for load testing without issues.

aaronlumsden 12 hours ago 0 replies      
Im currently selling http://jquerycards.com/ A jQuery plugin repository
dblock 1 day ago 0 replies      

A Slack bot leaderboard for ping-pong, chess, etc. Open-source, written in Ruby, https://github.com/dblock/slack-gamebot, with premium features. A handful of paying customers at $29.99/yr. No time to work on it.

itake 1 day ago 3 replies      

no revenue. 250+ subscribers to weekly email blast. 75 sessions / day.

make an offer.

mmaarrccoo 23 hours ago 0 replies      
Developed a solution (File System Filter Driver) to prevent ransomware from encrypting users' files. It's 70% done but I have recently accepted a position at a company and will not have time to build a full fledged product. I have tested it against major ransomware variants and it has proved very effective. I am looking to license either object or source code.
iamclovin 23 hours ago 0 replies      
https://www.asknestor.me - a programmable Slack bot platform, over 2000+ installs, featured by Slack App Store and has a cool programmable interface for AWS Lambda.


kehers 13 hours ago 0 replies      
http://thefeed.press - Easily follow articles shared by your Twitter friends.
wonderfuly 18 hours ago 0 replies      

It helps you find the first commit of a GitHub repo, created this year, it's on the front page of HN for a short while

huwshimi 21 hours ago 0 replies      

User signup/acquisition analytics for SaaS startups. Always open to entertaining offers from someone excited about the user lifecycle space.

dblock 1 day ago 0 replies      

A Slack bot that gives Yahoo! Finance market quotes and lets you track stocks. Free 7 day trial, 1.99$/mo after that, virtually no paying customers but hundreds try. No time to work on it.

john_mac 1 day ago 1 reply      

A startup brand store with curated inventory of premium project and startup domains. Domains can be developed or sold as is.

Needs a little polish before launching, don't really have the time.

Instant revenue stream with a bit of marketing.

spoiledtechie 1 day ago 0 replies      

Lets you download content on the web. Backup social sites, reddit, etc... 100s of subscribers. Getting ready to shift to a credits based system. 1 url per 1 credit.

Profitable and well received.

jkaptur 1 day ago 2 replies      

An online diff-as-you-type tool with the ability to generate static HTML diffs. Built it to scratch my own itch. Has basically 0 users and no revenue whatsoever :).

bmazza 23 hours ago 0 replies      

One of the original websites for sharing office space. I used to have Google display ads on there, but since removed so revenue is zilch.

HockeyPlayer 1 day ago 0 replies      
www.c0dereview3rs.com (I mangled this to avoid having this comment associated with the domain).

Boutique consultancy providing professional code reviews. Could be run by a coder who likes to do reviews and writes well or by a project manager who contracts the work out to experts with the appropriate skills. I have done projects both ways. I have some good reports to give to prospective clients and have found that customers who reach out are usually serious.

It has been completely ignored for many years. It used to get a good lead every month, but I havent checked the inbound email address in years. I joined a trading group in 2007, loved the work and quit doing side projects.

edoceo 23 hours ago 0 replies      
Yep: http://seosorcerer.com/

It's a bunch of page analysis scripts. Cool domain and grand-fathered Google Apps Free.

kleampa 1 day ago 1 reply      
http://changelogtheme.comwordpress theme+plugin for changelog sections/subdomains15 sales during current year
wh0car3s 22 hours ago 0 replies      
iBought < https://itunes.apple.com/us/app/ibought/id811696972?mt=8 > finance tracking app (iOS only). I had big plans for it but just don't have the time to make improvements. If anyone's interested, send an offer to info@elklabs.net.
neonbat 18 hours ago 0 replies      

its a simple way to make lists of links

icn2 1 day ago 0 replies      
http://bidwars.netbuy and sell with neighbors you trust
a3camero 1 day ago 3 replies      

I won Yahoo!'s international student programming competition in 2009 with this site. About a year ago it stopped working because of deprecated PHP functions. It had/has quite a few users but I've been too busy to fix it up. It could use a more nurturing home.

samaybhavsar 1 day ago 1 reply      
http://netstati.com - website profiler
elwell 1 day ago 0 replies      
jfrumar 1 day ago 0 replies      

Includes a backend for updating the listings. Was picked up by life hacker

ruffrey 1 day ago 0 replies      
mailsac.com email testing and disposable email
excitednumber 22 hours ago 1 reply      
i run a systematic trading strategy that has generated 44% returns since 2013.

would be happy to sell.

andrewmcwatters 1 day ago 1 reply      
Considering selling rights to Planimeter's Grid Engine.



empressplay 1 day ago 2 replies      

Bizah retro pixel camera android app written in java with a C++ image conversion routine

Ask HN: If MS spun off Windows, would it be forgiven?
15 points by daxfohl  1 day ago   7 comments top 6
taneq 1 day ago 1 reply      
I think the issue for me is their overwhelming lack of respect for their users during the Windows 10 "free upgrade" push. The heavy-handed GWX nagware push, the use of dark patterns like switching 'Install' and 'Cancel' buttons, repeated re-issues of the update which installs GWX. Then there was the telemetry built into Windows 10, which "could be turned off" but mysteriously kept re-enabling itself. Then pushing that telemetry into earlier versions of Windows via updates. Now rolling updates into monthly undocumented blobs.

To regain any kind of trust from me, they'd need to begin with a public apology for their approach, and a commitment to a far more open, accountable, and respectful approach in future towards their users' privacy and autonomy over their own systems.

viraptor 1 day ago 0 replies      
The product itself doesn't matter here. The way it was marketed, distributed, developed matters. MS did some bad stuff on all fronts, regardless of which software was involved. IE, Windows, Office, consoles all had their bad days because someone decided to force or bundle software in questionable ways. On the other hand there were some amazing projects done by MS teams: Singularity, security research (https://www.microsoft.com/en-us/research/research-area/secur...), and many others.

Being pro/anti whole MS without exceptions is silly.

(also even new Office has a lot of "vestiges of the past")

Sylos 1 day ago 0 replies      
I mean, it's still the same company. Just because they stop developing one of their products where most of their malice manifested, doesn't mean that they let go of the idea that doing these things was acceptable in the first place. So, I'd still be very much wary of their intentions.
UK-AL 5 hours ago 0 replies      
Only is for FSF fanatics is this an issue.
ksherlock 19 hours ago 0 replies      
Letting PC vendors do as they will sounds like a bad idea. Superfish will look like Little Nemo compared to the Candiru/Piranha hybrids that would follow.
fuqted 14 hours ago 0 replies      
Let's not forget LinkedIn
Ask HN: Which are the countries where I can convert Bitcoin to local currency?
5 points by navalsaini  1 day ago   4 comments top 4
przeor 1 day ago 0 replies      
Join FB Bitcoin India (or bitcoin your current city) and find there people who want to buy BTC for FIAT for a small fee -> https://web.facebook.com/groups/1740035142891102/ ... or simply check the https://localbitcoins.com/ :-)
Artlav 23 hours ago 0 replies      
Russia, bestchange.ru keeps track of all the exchanges and their reviews.

Despite all the noise, it's actually easy and fast to get the coins sold.

wslh 17 hours ago 0 replies      
Localbitcoins.com, what else do you need?
arisAlexis 1 day ago 0 replies      
Netherlands. Bitonic.nl is pretty solid
Ask HN: Tired of trying to catch the JavaScript train
19 points by passy29  2 days ago   13 comments top 12
bbcbasic 1 day ago 0 replies      
If this is for your job (and you are not a consulant chaning client every week) then they probably stick with the same frameworks for a long time, so just get to know those and ignore the rest.

If it is for a side project just use whatever you find comfortable. You don't have to learn them all.

E.g. for a side project just use vanilla JS, script tags (not NPM, Webpack etc.) and maybe a view framework, maybe JQuery and that'll probably sort you out. Then focus on building stuff rather than learning new frameworks.

rpeden 1 day ago 0 replies      
It helps to take a step back and see that the JS ecosystem is a bit crazy right now, but it is quickly becoming more sane and more mature.

For a long time, the tooling available for building complex JavaScript applications was limited. Unless you were Google; the Closure library and Closure Compiler provided tools for building large, complex JavaScript apps long before the current JS ecosystem got up to speed. But they were relatively difficult to learn, and the available documentation wasn't great.

Right now, the JS ecosystem is rapidly relearning and iterating on ideas and concepts that other language communities learned long ago. This isn't all bad, as the JS community does appear to be converging on a decent set of best practices. I've seen a lot of interested in code optimization, and reduction in the size of JS bundles sent across the wire to browsers. Rollup does a nice job here, and I've seen a renewed interest in the Closure Compiler - there's a Webpack plugin for it that does a good job of intergrating it into the JS build process.

I understand your frustration, though; if possible, maybe try not to worry about keeping up for now. Just use JS in a way that works for you, and in a year or two, check back in to see how things are going at the leading edge of the JS community. I can't say for sure, but I believe the pace of change will slow down a bit, and converge around a few major tools and frameworks.

mbrock 1 day ago 0 replies      
Do you really need to "keep up" with whatever changes are happening?

Are you using frameworks to solve your problems or are you learning about them because of some vague idea that you should?

I start my JavaScript projects with just an index.js and no dependencies and take it from there.

If I turn out to need some actual complex UI updating stuff, I'll throw in React and use it in the simplest way I can.

eiriklv 1 day ago 0 replies      
Take a step back and focus on JavaScript the language. Really learn how things work. Then take a step even further back. Learn more about data structures, about abstractions and how to think declaratively vs. imperatively. Rinse and repeat for the rest of the stack.

That way you'll have a solid foundation to build on top of. At some point you'll start to see patterns, and that all the "new" things are just incrementally improved materializations of patterns and concepts that have existed since way before the web was even thought of.

Spend most of your learning/experimenting time on fundamentals (timeless). Learn actual implementations and specifics when you need to, just in time. Avoid learning specifics (lib/fw) just in case.

Source: My own personal experience + the very insightful experience of teaching classes in JavaScript and React the last two years.

itamarst 1 day ago 0 replies      
What are your goals?

* If your goal is making money, find something that is longer lasting in terms of employer demand.

* If your goal is technical challenge, maybe switch to a different tech stack. E.g. start moving into other parts of web stack (see https://codewithoutrules.com/2016/04/27/which-technology/ for ideas).

* If your goal is using all the cool new technology, maybe it's time to pick a new goal that is less frustrating. Or, perhaps, a more stable tech stack than front-end web.

wayn3 1 day ago 0 replies      
Just ignore this JS nonsense until it consolidates. If you build something with it, pick a framework and use that. If you do not, why even bother?

Here's some truth.. if you're somewhat good with math, have a couple years of experience and have built real things, nobody is going to "not hire" you because you don't know the flavor of the month crap. Its going to change anyway. Because its flavor of the month crap.

Don't act as if you couldn't pick up react in a week if it was a job requirement, because that's how easy it is.

Spend your time on picking up a new paradigm. Never did functional programming? Learn some Elixir or Haskell. A lot more bang for your time than js framework #317 that is oh so much better than #316 until next month when there's another paradigm breaking framework that really just reduces syntax by a keyword.

douche 2 days ago 0 replies      
I don't think you can do it. Just pick what you actually work with, and try to stay up on that.

Someday, maybe, the churn will slow down. But I wouldn't bet on it. Just about the time JS settles down, WebAssembly will be finalized, and there will be a Cambrian explosion of new frameworks, as developers are freed from the shackles of JavaScript on the front-end and can use better languages. Once again, it will take years for a consensus on best practices to emerge, and a thousand flowers will bloom in the meantime.

edblarney 1 day ago 0 replies      
It is more specific to the JS landscape than others.

That said - once you do 'catch up' - staying on top should not be so absolutely hard - you need to pick and chose your battles.

Node.js is probably something you need to learn.

Most other frameworks ... you can wait until they are popular, but then you should toy with them.

Once you get used to the concept, learning new one's won't be that-that hard.

You don't need to an expert in any of them - very few people are.

godmodus 2 days ago 0 replies      
since you've amassed so much JS experience, why not go into the stack, stop chasing the newest EMS standard and just put a product together using the MEAN stack?

time to settle, start earning, and slowly tweak/hone your skills.

edit; mind you, i see it all around me, how chasing the newest fad keeps many of my friends from doing anything. while me and my good ol` linux skills just picked up vagrant and will hopefully be doing DevOps stuffs. I use whatever i need to get jobs done - Bash? no problem! JS? sure thing. Php? Python? some ambiguous framework? give me a couple of days to read up and it's done.

to quote Voltaire; ""A good plan violently executed today is far and away better than a perfect plan next week.""

just be a problem solver, and use your know-how and ability to learn as a tool to fix/do things. chasing dragons is often detrimental to growth.

kaonashi 1 day ago 0 replies      
Know enough about programming that learning the n+1th framework isn't a particularly high bar to cross.
Matachines 1 day ago 0 replies      
Move to backend or another domain entirely like smart developers do.
lgas 1 day ago 1 reply      
Ask HN: How to prepare for a technical interview?
6 points by 40acres  1 day ago   5 comments top 5
wwalser 14 hours ago 0 replies      
* Prepare. It's crummy that highly skilled practitioners have to do this in order to jump the sometimes silly hurdles put in place by technical interviews but it's a fact. No point bristling against it. I've always scheduled interviews in fairly intense blocks, interviewing at 4-8 companies over the course of a month. In the month prior to the interview month I spend about 100 hours preparing.

* The best practice for technical interviews is technical interviews. They are easy enough to set up, all growing companies are hungry for new talent and their pipeline is setup to create technical interviews, not filter people prior to technical interviews. Additionally, even if you're very good the failure rate is still relatively high. I'm a very confident interviewer for correctly matches roles and still get turned down about 1/4 of the time.

* Be prepared to talk, plan or converse about scalable architectures and approaches. For my last round of interviews I read a large portion of The Architecture of Open Source Applications[1] as prep work.

* Brush up on algorithms. There are so many places to do this that I honestly don't think any advice I can give you here will be more helpful than other resources on the web.

* Last but really first: Have a history of working at the same or just below the level as the job that you're applying for. Having both a depth and breadth of experience matters. If for some reason you don't have access to this type of experience you should seek it out via relocation, open source or remote work.

1. http://aosabook.org/en/index.html

daxfohl 8 hours ago 0 replies      
You're on the right track. I went through the algorithms book and did some leetcode and hackerrank problems, and did well on onsite interviews with four large software companies this month. Leet is nice because they categorize their problems, so you can make sure you're getting a good variety, and can identify any gaps you may have. Even if you're a genius and have a ton of experience, it's still important to work through some leet-style problems, just to get back into the mind-set of how to quickly solve these types of things, which don't come up often in day-to-day work situations.

Don't get terribly bogged down memorizing the details of e.g. red-black tree implementation, nobody asks much about that. It's more about knowing what algorithm to use for what job, and big-O complexity. Also make sure you know how to use a trie (prefix tree): it's not in the algo book but seems to be a popular interview topic.

In general, most interviews are similar to the kind of thing you find on leetcode, generally at the easy to medium level. Write some code that does X. Then it usually progresses to "what if you had a gazillion elements" or "what if you had to do it in 64 bits of memory", etc.

In addition there are usually some high level design like "how would you design a google search competitor?" which can go any direction from distribution to redundancy to security (all high-ish level; you don't have to know the details of these topics, just how to draw boxes and arrows). And there may or may not be some situational "tell me about a time when" style questions, so have some good examples prepared.

Practice your handwriting on a whiteboard. Practice going through your solutions and describing them coherently. (Hint: draw some diagrams and slow down, like every word you say costs a dollar). Don't give up: if you are totally stumped, something along the lines of "Okay here's what I'm thinking ... but here's why I think it won't work ... am I on the right path or would you suggest a different approach?". Ask questions to make sure you're using your time wisely: does the interviewer want to see the "best possible" solution, or does the interviewer just want to see the first thing that pops into your head; does the interviewer want to see code or are we just talking about it?

itamarst 1 day ago 0 replies      
1. Skim an algorithms text book.

2. Do some exercises. Doesn't matter from where, it's just about mindset and reminding yourself of all the algorithms you've never used at previous jobs and will never use once you're hired.

I recommend that during actual interview you pre-write tests, write code, and then "run" tests: this shows you're careful, helps you find problems and helps you take control of the interview. See https://codewithoutrules.com/2016/04/04/interview-puzzles/ for details on how to do this.

soham 22 hours ago 0 replies      
[Shameless plug] We're one more option for preparation: http://interviewkickstart.com. We're a bootcamp, which continually tries to answer this very same question - where to start and how far to go, when it comes to preparing for technical interviews?

We usually remain booked very far out though. But if we can help you any time in the future, please feel free to reach out!

dudul 1 day ago 0 replies      
Google and Facebook are known for always using the same set of questions during phone screens. Just google for past experience and you'll be able to compile a good collection of questions you'll be asked.
Mozilla stops distribution of WOT addon
155 points by mkesper  4 days ago   82 comments top 18
bimmer44 4 days ago 2 replies      
Web of Trust is a browser extension that claims 140 million installs. The marketing language on the home page [1] is all about how the extension will help users decide which websites to trust.

Their privacy statement [2] includes a section that describes "Browsing usage, including visited web pages, clickstream data or web address accessed;" as one of the categories of "non-personal information" that they may disclose or share with 3rd parties.

I'd imagine most users installing an extension to make their browsing safer would not be happy to know they were also making their entire browsing history available to 3rd party data brokers at the same time.

Unscrupulous business practices are definitely made easier when no one actually reads Privacy Policies...

[1] https://www.mywot.com/

[2] https://www.mywot.com/en/privacy/privacy_policy

moppl 4 days ago 4 replies      
Here is the blog entry of the Journalist Mike Kuketz, explaining in detail how he uncovered the fraud, unfortunately only in German. This includes samples of the questionable GET and POST Requests, as well as a link to a commit to the WOT sources on GitHub, which introduced the necessary changes ...


The commit referenced in the blog:


therealmarv 4 days ago 3 replies      
I wanted to say: And Google did not removed it. But actually it is also gone in Google extension store. Google also seriously needs to think about security in their Chrome extension store. I've seen more than once ads injected by extensions by the auto update (no real security there). Maybe I've been also tracked in the past. Google needs to actively monitor all extensions for ad injection and tracking code (where are their AI experts on that?) and also it should react faster to reports. In the past, weeks and months go by before a report has consequences for a extension. So the discovery of WOT is only thanks to German reporters.... but it was longer known that WOT tracks you.
mkesper 4 days ago 2 replies      
Did not find any english versions of this news yet, so here a translated heise site:https://translate.google.com/translate?sl=auto&tl=en&js=y&pr...
sumlogp 4 days ago 1 reply      
What's interesting is how the story completely failed to make the news in the English-speaking net for several days. The story broke on Tuesday (CET), outside Germany it was only picked up by ghacks until now...
paulintrognon 4 days ago 1 reply      
It is a shame that Mozilla did not explain why they removed the addon on the addon page, instead we just find a boring 404 page: https://addons.mozilla.org/en-US/firefox/addon/wot-safe-brow...

They could have taken the opportunity to show that they care about user privacy and denounce WoT at the same time

0xmohit 4 days ago 2 replies      
Such innovation .. pure evil.

What's the takeaway? Not to install any browser add-on?

On a serious note, I guess that it might be safer to to run a browser in a Docker container and use one instance to browser only site. The question is that how feasible it would be?

r721 4 days ago 0 replies      
I came to the conclusion that one should use only addons which are widely used by netsec experts, because audit is a fairly rare thing these days and one has to rely on when somebody sees something suspicious.
senorjazz 4 days ago 1 reply      
Good riddance, a vile site full of self appointed internet police with handpainted badges with a sense of importance

They falsely flagged a a website I ran a while back (social media management tools via approved APIs) as: pharmacy, scam and spam. Due to this mails from our server were not getting through.

I tried contacting saying they are all false. They updated saying we sold facebook likes and fake followers. We did nothing of the sort and did nothing at all with facebook anyways. I tried contacting again to which I was told we were a scam because the domain has privacy enabled nor had my personal name and address on the site. I value my privacy and do not have my full name and certainly not my address anywhere online.

I asked our customers via a support forum post if they could post an honest review of our site and service which did nothing to the score - it seems a couple of users have all the power. We then got branded as spammers for trying to manipulate our rating (with actual reviews, but as it was against the power users (who had never used our product) we were in the wrong.

secmax 4 days ago 0 replies      
Here is a brief (and compared to the german sources not so great) english language version of what happened:


throwawayweb 4 days ago 0 replies      
This is more or less the same way SimilarWeb collects its data, so I wonder when will they start being treated the same. They operate a number of inhouse extensions and partner with other extension developers to collect the entire click trail of the users. Internal links in your intranet, localhost, "private" google drive links, all is collected and sold. It's beyond me how this shady business is treated as legitimate, including major web and tech publications citing their data reports.
Narretz 4 days ago 2 replies      
WOT = Web of Trust
consto 4 days ago 3 replies      
So basically I should uninstall it, correct? Does anyone know of anything to replace it?
cheiVia0 3 days ago 0 replies      
Details in the Debian bug report:


LinuxFreedom 4 days ago 1 reply      
All the other addons are completely trustable, of course.

It also really helps that Firefox never deletes cookies by default and never tells you about this. We 'respect' your privacy, yes, we do! Really! Look, you will have only one google cookie when you start a very new firefox.

We really respect your privacy, yes! We will reiterate that until you believe it, but never change our privacy destroying default settings, because we 'respect' you!

r3dn3r 4 days ago 1 reply      
Those stories about Adblockers selling browsing history and private data, is just a lame intent to make people stop using adblockers and make us digest all that advertising crap.... Watch an ad is our choice....
dagiuth 4 days ago 0 replies      
on android i used to go pretty extreme and edit hosts file on a rooted phone. you can find maintained lists for it they just zero out the address. for security i would also make all the edits i wanted for different things and then unroot.

for firefox there is also script blocker with the ability to white list adresses also remove history on close.

Ask HN: Do you still use UML?
164 points by dmitripopov  3 days ago   185 comments top 77
bane 3 days ago 2 replies      
In its entirety? No. Never go "full UML", it will annihilate productivity and produce abominable software. It also is taught wrong, it tends to be taught as a design tool, but there's such a tremendous impedence mismatch between the diagramming tools and the way the code actually gets written that it ends up doing more harm than good. (not to mention that the people who usually end up creating the UML might be many organizational layers away from the developers).

But there's some goodness in there. The principal of using diagramming as a descriptive documentation and communication solution is highly worthwhile, but again it should be limited to pieces of the system that need such things. And in addition, the level of detail should be just as much as is sufficient to communicate what's necessary -- don't "prematurely optimize" by trying to document every bit of the system in excruciating detail.

There's also often better, simpler ways to document many aspects of a system, a few boxes and arrows work well for many things. Lightweight versions of the Archimate style work well for describing complete systems. Protocols are well described by a lightweight treatment of sequence diagrams, etc.

They'll often go out of date as quickly as you make them, so keeping them up to date and well versioned turns into a challenge.

Because it's free and provides cross platform compatibility (and the diagrams are supposed to be communication devices), we tend to use yEd for most things.

sly010 3 days ago 2 replies      
The 3 actually useful diagrams that I have seen in the last 10 years are:

- Sequence

- Entity relationship

- State chart

All 3 are useful for communicating protocols, schemas and state charts.

Sequence diagrams are probably the most ubiquitous, and very useful in explaining protocols. Even RFC-s have them.

Relationship diagrams are often (ab)used to visualize relationships between tables in SQL databases. While it's not very useful for designing, I have actually used them for understanding and simplifying a complicated database schema.I actually believe every API documentation should start with an abstract entity relationship diagram. Abstract in the sense that it should not necessarily represent physical tables, but give an overview of the underlying structure to the first time user. Doesn't even have to complete or correct.

State charts are occasionally useful for obvious reasons. Try explaining TCP without one.

I think it's worth noting that the above 3 existed before UML and UML merely tried to formalize them, so while I don't think anyone uses "UML" anymore,being able to comprehend the above 3 charts is as basic of a skill as being able to read pseudo-code, and saying they are not is use would also be false.

Edit: formatting

lkrubner 3 days ago 2 replies      
UML was, in some sense, an expression of a certain kind of politics:


"And there is an explicitly political idea that drove OOP to its peak in the 1990s: the idea of outsourcing. The idea of outsourcing software development rested on some assumptions about how software development should work, in particular the idea of the genius architect, backed by an army of morons who act as secretaries, taking dictation. OOP was the software equivalent of a trend that became common in manufacturing during the 1980s: design should stay in the USA while actual production should be sent to a 3rd World country. Working with UML diagrams, writing code could be reduced to mere grunt work, whereas the design of software could be handled by visionaries, possessed with epic imaginations, who could specify an OO hierarchy which could then be sent to India for a vast team to actually type out. And the teams in India (or Vietnam, or Romania, etc) were never trusted, they were assumed to be idiots, and so, for a moment, there was a strong market demand for a language that treated programmers like idiots, and so the stage was set for the emergence of Java. "


febeling 3 days ago 3 replies      
I use boxes-and-arrows sketches a lot. The UML which was so popular around 2000 was this detailed quasi-standard graphical language. It was very centred around being correct, and diagrams being of a specific type of a number of permissible types, and so on. And that whole part I never found to be too helpful.

It is useful to draw ideas as graphics for people who's brains are wired visually. And it can makes nice figures for books and articles explaining structures and concepts. But in neither case does the value predominantly depend on the depictions begin adherent to a standard, as much as other qualities, like focusing on the right part of a larger system, or leaving out unimportant detail, etc.

So nonstandard diagrams offer the author or user more creative flexibility, which is often very important.

I do see value in loosely following UML notation, for the obvious reason that one can immediately see if someone tries to show classes, states, requests, systems parts, and so on. That was probably the original goal behind UML all along, even if people lost sight of it during the fad phase.

smoyer 3 days ago 5 replies      
UML can be a great communication tool in specific situations but when it becomes a religion your organization will suffer. I'm older than most here, drank the cool-aid that predicted code generation and round tripping but spit it back up before the poison had a chance to set in.

A bonus comment for the youngin's ... When you hear that some new system will allow "the common man" to write his own software without developers, smile and agree with them because they'll come back when it doesn't go as planned and you can charge a higher rate for the resulting expedited project.


I should also admit that I liked (like?) the idea of writing code using diagrams. In the '80s I wrote a program I called "Flo-Pro" in Turbo C that never quite became self-compiling. It wasn't at all OOPsish or FP. In the '90s I wrote several tools in Prograph [0] (now known as Marten) but was stymied by the fact that I was the only one in the company using the tool. In the early aughts, I tried URL tools that promised to write my code from the diagrams - it worked for very simple code but I never saw round-tripping work.

I love drawings in general - my coworkers joke that it's not a meeting unless I have a dry-erase marker in my hand. But those diagrams are invariably system-level, architectural drawings. As others have noted, I also appreciate ERD as a way to visualize relationships in RDBMS. So as much as I like the idea, development stays in the world of text - I'm not holding my breath for some magic bullet.

[0] http://www.andescotia.com/

sidlls 3 days ago 2 replies      
HackerNews may not be the best place to sample for UML usage. It consists mainly of two communities that have a bias against formal engineering methodologies in the development of software.

I won't comment on the pros and cons of UML. Instead I'll invite you to ask yourself a couple of questions.

1. What other clients do you support who have similar characteristics as this client (and may therefore also benefit from UML support)? If the number is significant in terms of impact to your bottom line versus the time you'd have to spend implementing it, then you should consider it worth your time, and view it as an opportunity to up-sell (if you can) or keep existing customers.

2. Do you intend to attempt to move into supporting large enterprise, and especially government contractors? If so, you might consider UML support just because it is ubiquitous there.

Blatorg 1 hour ago 0 replies      
I would say it really depends... There are UML diagram generators with whcih you might want to integrate (e.g., PlantUML) that would meet the needs of someone creating documentation.Alternately, they may use their own UML tool (or a free one like Eclipse Papyrus) to create the diagrams they need and then extract those as pictures that you can import.

IMHO, adding full UML support is crazy for your application and would potentially add years of development.

Even adding simple, non-model based UML creation would be a significant burden if you are a small company. Plus, there might be open source generators or generators you could call programatically to generate the images desired.

But first, you probably need to better understand your client's actual needs. I have doubts that they would need all the UML diagrams...

eksemplar 3 days ago 1 reply      
I do, quite a lot actually.

Originally it was mostly because it was the default setting in my Enterprise Architect tool, but it's proven more useful than Archimate (and other notations) because people without architect knowledge understands it much better.

On the business side it's mainly the system integrations, dependencies and information flows that are of value and you could honestly do them in Word if you wanted. Because it's very easy to build upon it, it's also easy to turn the business specs into something I can hand to an actual developer or use as a common language when talking features and requirements.

I wouldn't use UML if I was doing the systems engineering from requirement specs handed to me, and it is very rare that we use more than 10-25% of its full functionality, but it has enourmous value when you are trying to get future system owners to understand their own business processes and what they actually need from their IT.

EdSharkey 3 days ago 0 replies      
As a communication tool I've sold work with a really busy, boxy class diagram where the focus is on the connections and not a complete representation of all the properties.

Being able to stand in front of a big screen and point to and talk about connections and cardinalities magically draws questions and comments out from the business stakeholders. That feedback helps me get the model to a place where it generally matches what the business wants.

Keeping that diagram alive and updated as we implement the system has served as a super valuable tool for communication with other teams that need to touch the model. Everyone continuously hashes out and agrees on common terms, ownership, etc.

The worst defects come from requirements or design defects. I'm not advocating for giant up-front designs with hundred+ page software design spec docs. But, paraphrasing Uncle Bob, "'no up-front design' doesn't mean no design." There has to be some design of some sort and some documentation of the system being developed.

I think the time to stop diagramming/designing is when adding more detail won't communicate anything more about the model or business process in casual conversations about the system. That's a very subjective line to draw, but it helps me to think that way.

arethuza 3 days ago 4 replies      
I absolutely hate UML and regard the associated tools as time swallowing abominations and the main advocates that I encountered as the worst kind of snake oil salespeople.

Of course, other people's experience may differ - but I largely thought it was a big con.

segmondy 3 days ago 2 replies      
Yes I do. When you have a team of developers with different model of how the system should work or works, it's usually a recipe for disaster. By modeling, we get to unify our thoughts and idea of the system.

When starting out a project, I tend to lean more towards well labeled conceptual diagrams. I will also use activity diagram, sequence and state diagrams.

While I have often read about people designing class diagram before hand, then writing or generating code. I never use class diagram before code is written. I use class diagram to document an existing system.

It's a tool, if you are willing to be flexible and realize it for what it is, then it's useful.

mannykannot 3 days ago 1 reply      
Back in the late 80's, there was the CASE (Computer-Aided Software Engineering) fad, when it was thought diagrams could replace code.

The idea that a picture is worth a thousand words is not applicable to most of the words one would use to discuss systems designs. It is very difficult to discuss purpose and intent, or to present arguments that the design satisfies requirements or observes constraints, to justify choices, and say how things work, through any sort of diagram, let alone only those of UML (use cases are something of an exception, as they are not actually diagrams.)

On the other hand, diagrams are a very useful adjunct to these activities, and are widely used in informal discussions. This is broadly in line with how diagrams and pictures are used in other technical and scholarly fields: for example, maps, statistical charts and pictures of places and artifacts are very useful in history articles, but are never the full story.

Furthermore, I can usually write a thousand words faster than I can draw the corresponding UML diagram. The UML I am most likely to use will be machine-generated from code and will be used as a supplement to the text I am writing.

elsurudo 3 days ago 1 reply      
UML is too heavy and rigid.

I use my own subset/version of UML, which uses a simplified "grammar", and allows you to express basically only the following:

- Class with attributes- Parent/child relationship- One-to-one relationship- One-to-many relationship- Many-to-many relationship

If I have some other need (rare), then I improvise. Usually I'm the only one who looks at these, but if a client or someone else needs to, the language is simple enough to understand that I can explain it in a few examples/sentences.

cageface 3 days ago 0 replies      
Not exactly UML but I find rails-erd can be helpful to understand a data model, particularly if I'm trying to come up to speed on an existing codebase. It has the very large benefit of automatically staying in sync with the code.


wyldfire 3 days ago 0 replies      
"What's your favorite editor?" pales in comparison to the divisiveness inspired by "how do you feel about UML?"

I used Rational Rhapsody for a few years. We used it for use case diagrams, sequence diagrams, class diagrams, object model diagrams, statecharts+code generation.

Many folks scoff at and draw the line at code generation. By default, tools like Rhapsody seek to box you in to a certain way of doing things. It's not difficult at all to customize but it requires effort to opt out of some defaults. I felt like I experienced significant pros and cons. One one hand it was awkward to use their IDE to edit the code. OTOH it helped encourage a level of organization to the code. Statecharts are very expressive and very clear, I really liked them. There's no limit to the expressiveness of the code you can write. But the vocabulary used to describe the widgets I was working with was new to me, so it took a good deal of time to look up and understand the customizations required.

In the absence of code generation features of UML, the diagramming features are really great. Developers are too quick to treat it like a religion and (on both sides) become inspired to pray at the altar or preach about the evil that lies within. But really, it's just a glossary of visual representations mapped to software design concepts. That's all it needs to be -- conventions like the ones used in other engineering discipline's diagrams. Diagrams with "boxes and arrows" are just fine but there's always the implicit questions: "does that rectangle represent the process executing the 'flabtisticator executable' or the 'flabtisticator class'?

mark_l_watson 3 days ago 0 replies      
I co-wrote a book on UML years ago. Back then, I thought that UML diagrams helped with communication. However, Sequence Diagrams are the only type of diagrams I use anymore.

For Java, perhaps high level class diagrams are still useful also, but I have been switching over to using Haskell (as much as I can) and I have not worked on a large Java project in a long while.

maxxxxx 3 days ago 0 replies      
For a while I used UML but whenever I showed them to even experienced developers they didn't understand them. So I went back to simple box and arrows. Easier to understand and also easier to create and modify. Flow charts and state machine diagram usually work too.

I almost have a prejudice against people who use UML because a lot of them seem to be the "architect" types who talk about integration patterns and stuff but don't get much done.

kaio 3 days ago 1 reply      
Yes, but not in the formal sense. And i don't get why agile and proper documentation should not go Hand in Hand. There are components and class Diagramms that are invaluable for me when i'm joining an existing code base. Even if they are not up-to-date everytime.

State and sequence diagrams are really cool to discuss dynamic flows and identify potential logic holes. UML-like diagrams are way better then to come up with your own representation of this everytime

lpasselin 3 days ago 0 replies      
I am on a 5 min break of working on a school project where lots of UML diagrams are required. I was finishing our last required sequence diagrams right now!

Although this is a small team project, making the diagram takes at least 5 times the time needed to write the code. In our team of 4, 3 of us will not need to write code.

I understand it is good for management but I hope I will never be required to do this ever again.

the_mitsuhiko 3 days ago 0 replies      
I don't think i ever did. It feels like an enormous waste of time.
llndr 3 days ago 1 reply      
Sequence and state diagrams are fine, why not using them when you want to communicate certain things?
Svan 3 days ago 1 reply      
I do. UML class diagrams can help you turn real world business objects into model and think about dependencies and relationships of entities. I would say that it is the best tool to model software. Sequence and activity diagrams can help you design and document a process.

A picture is sometimes worth hundred words and this applies to UML as well.

lisper 3 days ago 1 reply      
IMO UML adds negative value because, with only a very few exceptions, its semantics are carried by shapes that have no mnemonic relation to the concepts they are intended to communicate. What is the difference between a dashed line and a thin vertical box in a sequence diagram? A hollow vs a filled diamond in a class diagram? Does:

C1 ---> C2

mean that C1 inherits from C2 or that C2 inherits from C1? Does:

C1 ---* C2

[Note: the * is supposed to be a filled-in black diamond, but HN apparently doesn't allow unicode characters in comments.]

mean that C1 contains instances of C2 or that C2 contains instances of C1? What would it mean if the diamond were hollow instead of filled? What is the difference between a solid and a dashed line in a class diagram? A sequence diagram?

The only way you can possibly know the answers to these questions is if you have mastered an enormous amount of trivia. And then what have you actually gained? How is a class diagram better than simply writing out as text, "Class C1 inherits from C2, C3 and C4, and contains single instances of C6, C6 a set of C7s, and an ordered list of C8s?"

In >90% of cases, the information conveyed by UML can be much more easily and effectively communicated by plain text.

bunderbunder 3 days ago 0 replies      
For general purpose data modeling, I tend to favor some loose variant of Bachman or Chen notation. UML feels complicated to the point of being hard to read.

For architectural diagrams, I just use basic boxes, arrows, cans, etc. UML also tends to feel complicated to the point of being hard to read.

In both of the above cases, I think my not using UML is because its goals differ from mine. UML seeks to capture how a system comes together as completely an accurately as possible. I tend to think that the code should suffice for that (and if it doesn't, it's time to have a long hard talk about technical debt). I prefer diagrams to just be a gloss that helps to explain how things come together at a high level.

For understanding protocols and suchlike, though, UML sequence diagrams are my go-to. That's a rare spot where I really do want the diagram to capture a whole lot of fine detail, and the UML standard provides a pretty clear, intuitive and uncluttered visual language for the job.

pjmlp 3 days ago 0 replies      
Yes, all the time.

We don't go full UML, but it is the best tool to have a solid architecture overview, before committing to solutions that won't fit with what customers actually want.

It is also a very good tool to onboard new developers into the team without forcing them spending endless hours reading code.

stevesun21 3 days ago 0 replies      
Yes. It is the language designed for software engineers to share designs, logic and ideas with others. I never enjoy the scene that two engineers talk designs in front a white board by keep writing some random words they catched during talk and draw some wired line and cycles. The most painful part is that even they take a picture of it, they still have to argue about the ideas later when they start coding. :-(

UML is actually the first language a software developer should learn. The most ridiculous words I have heard is that a senior engineer "mentor" other juniors say the IBM Rose is UML! And argue about how Rose huge and hard to use.

I really worry if there still have some deciplines exist in software industry, if so many people still obsessed to call themself software engineer?

larve 3 days ago 0 replies      
I do quite a lot. I use it for sketching out and documenting software. I use state machines for, well, state machines, which make up 90% of the software I write (embedded). They can almost mechanically be transformed to sourcecode, but I do the coding by hand. I use it for sequence diagram to sketch out and document sequences of events, and also generate sequence diagrams out of trace logs. And finally I use class diagrams to document the software architecture. For all of these I use plantuml because the text format is simple, human readable, and easily versioned. For the kind of software I write (embedded software with a lot of state machines and strong OO architecture), it is absolutely great. Definitely one of the big tools in my toolbox.
qznc 3 days ago 1 reply      
I'm teaching it. It feels increasingly out of date. Tool support has stagnated for years on Linux. Modern features like lambdas are not really supported.
cs02rm0 3 days ago 0 replies      
I don't and if you're religious about it, I'm afraid I don't want to work with you (I accept the feeling may be mutual)!

Most developers don't have a complete knowledge of it and don't enjoy writing it; essentially I believe it's because they know it's not an efficient way of communicating ideas with other developers.

Modelling can be useful, but as far as I can work out something like gliffy with lines, boxes and little else is almost always sufficient. I'd imagine safety critical space or aviation systems and other niches are a different kettle of fish.

jakub_g 3 days ago 0 replies      
Been working in a large corp for last 5 years. Never created a single UML chart, maybe I've seen one or two.

Maybe it's because I work in front-end, which "traditionally" is a bit less strict (JS is dynamically typed etc.), but also, I think that typically the codebase changes too rapidly and the fancy graphs can't catch up with that, they get outdated in a few months, and no one bothers to update them or even look at them anymore (they might be useful in the beginning of the project though).

BjoernKW 3 days ago 0 replies      
Yes. Keep in mind though that the - perhaps historically, perhaps still - most widely used kind of UML diagram - the class diagram - is just one component of UML.

Other than for explaining particular design patterns I don't find class diagrams all that useful, certainly not for giving you a complete picture of a system that consists of more than a handful of classes.

Sequence diagrams, state diagrams, use case diagrams, basically anything that involves or describes activities: I think those are tremendously useful.

alemhnan 3 days ago 3 replies      
It is useful if you are able to generate code from it. I know one big software company (more than 3000 employee) that generate 90% of all it's code base (~20M lines of code).
myf01d 3 days ago 0 replies      
It's just big corporations bullshit to fill meetings time.
altharaz 3 days ago 1 reply      
Good UML diagrams are hard to write, easy to understand.

I used to write a lot of UML diagrams in Mechatronics Engineering for a big company, where specs were not supposed to change often.For projects with a long lifetime and a slow change velocity, UML is totally justified.

UML diagrams are not worth it for Software Engineering: code evolve too fast to keep your diagrams up to date.In that case, I replace UML diagrams by simple sketchs / mockups and simple tables.

krschultz 3 days ago 0 replies      
I'm an extremely visual person so for me diagrams are incredibly useful. I'm constantly drawing class diagrams and communicating via pictures. I want UML to work so bad.

Unfortunately, I think UML suffers from all the dysfunctions of a language designed by many stakeholders. It's just not intuitive, so you have to remember the details. I start practically every handwaivy whiteboarding session with the disclosure "this is not UML but ...".

As with many "standards", we've sucked the oxygen out of the room by saying this is the one true way. I very much prefer having multiple competing specifications and letting the winner shake out. I imagine if we hadn't prematurely standardized on UML years ago, visual programming and diagramming would have evolved in exactly the same way regular programming languages have evolved. Why do I have 30+ choices for what to write my web server in, but only 1 seriously spec'ed out language for drawing it?

xtiansimon 3 days ago 0 replies      
UML was useful for visually communicating document architectures in the Web 1.0 world. But what's a UML diagram for a dynamic web application? Server<-->Database, done? If the tool doesn't fit the problem, don't use it.

And then there's the domain specific UMLs, such as Operations Management and BPMN, where the diagram can be programmatically "powered up" to analyze operational efficiency. If you work in a hierarchical organization where you need deliverables that filter to other departments, and there is a perceived value, then someone is going to be tasked to make it. But in a flat organization in startup mode, it's a waste of money.

If you're working across organizations, in public/private partnerships; if your government organization needs to be accountable at diverse levels, then UML is visual language that communicates a lot of information at once--in one artifact. Tax dollars going for new transportation infrastructure in New York City, maybe there's a need to get diverse groups on board. But you're going to pave potholes in Levittown, NY--who cares? Get it done; stop wasting money.

And finally, there is a the language-cultural dimension. Europe is multi-lingual, so it's no surprise the Open-Education Resources offering UML-like education materials are from European universities [1][2], and not American Universities. That's not our language problem (yet).

If you have a customer asking for UML, you need to understand their problems. Once you do that, then you can decide if the problem vector they present is profitable sector for your company.

To put all this in other words, UML is a tool and a visual language. Use it or not, it's not going away--ever.

[1]: https://open.hpi.de/courses/bpm2016

[2]: https://www.edx.org/course/creative-problem-solving-decision...

sheraz 3 days ago 0 replies      
Nope. Whiteboards and maybe a photo of it for posterity :-)
brunosaboia 3 days ago 0 replies      
As almost in any case with computer science, the answer is "depends".

UML diagrams can be very useful to represent a system to someone which is not technical enough to understand code, but can understand the basics of the diagrams.

Personally, to myself it's usually more a waste of my time.

xjay 3 days ago 1 reply      

There was a recent talk about the model-code gap [1]. How diagrams often don't map to the code. The C4 model. "Structurizr." Lack of common abstractions to describe software, in contrast with other fields like electrical engineering. Good to still start out with paper/whiteboard.

@7:13 "1 out of 10 people use UML," in his experience. People adopt ad hoc notations instead.

His use of UML is not for describing the system at a high level.

[1] GOTO 2016 Visualise, Document and Explore Your Software Architechture Simon Brown


cmrdporcupine 3 days ago 0 replies      
UML use case, activity, and sequence diagrams are perhaps quite useful. I'm too lazy to make them :-) but I find them useful to consult at times.

The class diagrams that everyone is really thinking about when they say "UML" are imho kind of useless. It reflects a kind of obsessive OO purism, and taxonomical obsession, that was quite trendy in the late 90s, early 2000s.

But it turns out in most cases looking at a class diagram doesn't really tell you much about what software does or how it works. And in any case I personally find it easier to look at header files or source files to get a picture of how things fit together. Class diagrams don't really help.

moss 2 days ago 0 replies      
I'll often use sequence diagrams or entity relationship diagrams when I need to explain how a piece of code works (or even just visualize it for myself). I don't tend to be very pedantically correct about it, but having a picture makes it a lot easier to follow how different pieces fit together. I generally leave out a lot of the less important details when doing this.

I wouldn't generally use it to design code that hadn't been written yet. There's a lot you only discover once you get something working, and that needs to inform the design.

mikekchar 3 days ago 0 replies      
I draw UML diagrams frequently. I almost never persist them, though. As they say, the only thing worse than no documentation is out of date documentation.

I can definitely see an argument for certain types of projects (libraries and frameworks). If you have diagramming capability, and you are in the enterprise Windows market, I think this is a no-brainer. I'd be curious what diagramming support you had if it were not UML....

Having said that, I wouldn't try to implement a full object modelling solution. It's not the kind of thing that help files need. Actor diagrams and sequence diagrams would make more sense to me.

edem 2 days ago 0 replies      
I sometimes create UML diagrams but I try to simplify them as much as possible. Sequence and Entity relationship diagrams are useful but the rest is rubbish IMHO. I tend to use them only when I'm in the planning phase but I ditch them when they become obsolete and the application is ready. This might not be the best workflow but updating diagrams is horrible. You also can't really use UML for functional languages like Clojure. I feel that they are becoming more obsolete with each passing year.
wangchow 3 days ago 0 replies      
I have used mostly the class diagrams and sequence diagrams.

I like how UML class diagrams defines the different potential relations between objects involved in software.

It would be nice if more people (myself included) learned better ways to consistently communicate software design. Lots of ad-hoc meetings result in confusion because often a design is scribbled in ones own notation then communication takes longer. But yet such communication is crucial to large projects.

Some call it architecture, others call it design patterns. Either way its important to have thought-out, standard ways to communicate ideas.

slim 3 days ago 1 reply      
Yes. Everyday. With a pencil on a notebook.

When I take notes, some concepts are better/faster materialized as relationships between objects or actors or activities

Also reasoning about schematics topology is useful and enlightening when a problem is large

double_entendre 3 days ago 0 replies      
I haven't found a better activity diagramming tool than PlantUML with Vim's aklt/plantuml-syntax and using watch to automatically build the diagrams.

I challenge any of you to come up with something better.

meekins 3 days ago 0 replies      
I'm really lazy when it comes to maintaining docs and mainaining UML is sometimes a pain so I only use dynamic parts of UML like sequence diagrams on a relatively generic level that is less likely to change (examples of call flow between modules/tiers with different responsibilities).

Class diagrams are pretty nice when building a rich domain model since it's pretty easy to move from rough conceptual level closer to designing and documenting the actual implementation while working on the same diagram over time.

partycoder 2 days ago 0 replies      
UML diagrams are practical, but there's a cost to creating them and maintaining them. You can argue that many tools have been created to address this problem, but the problem remains... especially maintaining them.

Now, sequence diagrams remain one of the best ways of explaining distributed workflows (e.g: OAuth) that I know of. If you work with an OOP language, a class diagram might be useful to express some ideas. Other UML diagrams are less used.

Achshar 3 days ago 0 replies      
I never got into it to begin with. But I did ended up using a form of few diagrams that I later learned were part of UML. They just come to anyone who's solving a problem naturally.
douche 3 days ago 0 replies      
Probably it is not. I think I'm late enough that I missed the UML wave, and I also did well enough on the AP CS test that I tested out of the CS 101 Java course in college, and got thrown into the Haskell one instead, so I was never forced to do UML.

Once in a while I'll fire up Visio and sketch out a state machine or sequence diagram, but all I'm really doing is throwing down some bubbles or rectangles, drawing some arrows between them, and tacking on some labels. It's nowhere near as formalized as UML, but it works well enough.

Raed667 3 days ago 1 reply      
I only ever used it for school projects, and only because it was required.
gaius 3 days ago 0 replies      
I'd rather use XML than UML and that's saying something.
flurdy 3 days ago 0 replies      
No, and yes. I, and my last few places I worked all use sequence diagrams, especially when dealing with a new feature with a microservices based architecture (private and gov clients).But very basic usage. I do spend a lot of time tinkering with diagrams in http://www.websequencediagrams.com both for work and hobby projects.
jschwartzi 3 days ago 0 replies      
I use sequence and communication diagrams, but I find the other diagramming techniques less applicable to the type of work I do. In the systems I work with most problems arise from transitions between states and from communication issues between isolated units. I find that static models just end up having to change rapidly throughout the implementation, so I focus on creating APIs and tests instead.
_nalply 3 days ago 1 reply      
I still think in use cases but without the goofy graphics. I just make a Markdown bulleted list then give the use cases each a name and a short description.
mhd 3 days ago 1 reply      
In recent times, about on the same level as ERDs for databases. So mostly as a quick top-level sketch when designing something (mostly on paper), not really kept up to date when the code/model changes. Goes along with getting away from rigid class models in general, and for UI classes, the relationships are a bit more self-evident.

I do miss Booch's fluffy clouds a bit, though.

euske 3 days ago 0 replies      
UML (as ERD) is used by the official IT certification in Japan. So yes, some of us still have to learn it.

cf. https://www.jitec.ipa.go.jp/1_04hanni_sukiru/mondai_kaitou_2...

cordite 3 days ago 0 replies      
The only concept of UML I use is the N-many relationships, adding a number or asterisk to the edges between things.
mugsie 3 days ago 0 replies      
Yes - mainly for communicating with other teams. Its not the full spec, but a sub section, so that others (mainly the security architecture review) can understand the basic parts of the system.

I tried to keep it up to date for the public docs, but that can be an uphill battle.

coldcode 3 days ago 0 replies      
I don't use UML, nor its predecessors going back to the early 1980's. I draw little pictures to ensure I understand what my code is/will do but that's it. Formal diagrams are as useful as formal documentation written wearing a formal suit.
dirkdk 3 days ago 0 replies      
Sometimes I like to use class diagrams for my models and sequence diagrams for API calls. State diagrams.

But just for higher concept sketching and most definitely not for generating code. I tried that, 12 years ago with Rational Rose. Boy did it suck.

sfaruque 3 days ago 0 replies      
If I must use UML, I prefer using Yuml (http://yuml.me) to generate them.

Easy to use, allows you to "code" the UML structure in a simple template language, and the output looks rather nice.

Torn 3 days ago 1 reply      
Sometimes, in google drawings to talk about code or systems architecture in the abstract
prav 3 days ago 1 reply      
Yes, used the UML class diagrams, sequence diagrams and Statechart diagrams for an embedded device software.

It's just a tool for modelling. You can pick and choose the diagrams you need, and at the abstraction level you desire.

kyled 3 days ago 0 replies      
Usually I diagram the very high level architecture of the program. Anything lower is to volatile and wouldn't reflect the design due to code changing all the time.
steedsofwar 3 days ago 1 reply      
In the last 16 years (i've worked at over 10 companies) i've only had one company use UML and it was only for an overview of the proposed architecture.
ainot 3 days ago 0 replies      
ERD's and Sequence Diagrams are helpful on occasion, that's it though. And those can be done in any drawing tool.
wayn3 3 days ago 3 replies      
never did. whats the point?
mattmanser 3 days ago 0 replies      
No, nor have I seen any diagrams or had it mentioned to me by any other programmer for at least 5 years.
kabes 2 days ago 0 replies      
UML seemed to be tailored for java. I stopped using it when i stopped using java
NoCanDo 23 hours ago 0 replies      
No. Not worth it.
je42 3 days ago 2 replies      
plantuml is nice. ;)
staticelf 3 days ago 0 replies      
No, I have always hated it. I rather be flipping burgers at McDonalds than use UML.
burnt1ce 3 days ago 1 reply      
I like to draw UML every so often.

Question to HN: What tools do you guys use to draw UML diagrams?

maplechori 3 days ago 1 reply      
requirements in any real life scenario change every day, useless
qwertyuiop924 3 days ago 0 replies      
never have, never will.
probinso 3 days ago 1 reply      
I use it in interviews. That is about it.
Ask HN: Tips for reading HN on mobile for older eyes?
9 points by ceterum_censeo  2 days ago   3 comments top 3
severine 1 day ago 0 replies      
I use Materialistic (on Android), it's really great, and lets you configure fonts, text sizes and colors.

https://github.com/hidroh/materialistic [project repository]

https://play.google.com/store/apps/details?id=io.github.hidr... [Play Store download]

https://news.ycombinator.com/item?id=12464051 [previous discussion]

(edit: formatting)

justanton 2 days ago 0 replies      
I use MiniHack (iOS) to read on the phone: there is an option to increase the font size.

The UI is not the best and how the comments are displayed could have been done better, but it works for me.

Mz 1 day ago 0 replies      
Although I am old and have terrible eyesight, I don't have an issue reading HN on mobile. But there are plenty of themes and apps out there that you should try. For exampke:






And Google search turns up multiple Hacker News apps, though I am not clear how to link that here.

Normal for recruiters to ask for last 4 of your social / dob on first call?
45 points by jackmodern  14 hours ago   45 comments top 17
liquidcool 13 hours ago 2 replies      
Absolutely not. I hire engineers, for myself and others, and the last thing I want to know is how old you are. Are they insane? I can't think of an easier way to set yourself up for an age discrimination lawsuit.

Also, for third party recruiting, I've never asked for anything related to an SSN. The hiring company may ask for that for a background check, if it is contingent on an offer, but not from me.

I'm wondering if this another situation where the recruiter is not in the country the job is in, because someone wanted to pay pennies on the dollar.

pmiller2 13 hours ago 1 reply      
No. Run, don't walk away.

There's no need to reveal that information until you've at least got a firm job offer.

walrus01 13 hours ago 0 replies      
Oh, hell no. That's a scam.
unwind 10 hours ago 1 reply      
I totally didn't get this, but inferred from a comment: "dob" in this context means "date of birth".
jakebasile 12 hours ago 0 replies      
Scam. Block their number/email.
petters 12 hours ago 0 replies      

The interview training at my company mentioned age as one of many things we were forbidden to ask about.

SSN? It was so obviously disallowed it was never mentioned.

imsofuture 13 hours ago 0 replies      
No. Or maybe, for an awful recruiter. Just bounce.
withdavidli 10 hours ago 0 replies      
If you're in the US the most common time for that info to be collected is at the offer acceptance stage. This is usually a form you fill out for their HR system.

This might be different depending on the country. I've seen CVs that have SSN/DOB/Marriage/Picture/Driver License because where they are located that's normal info to have on there.

dczmer 3 hours ago 0 replies      
there is no reason for the SSN digits unless you actually get a legitimate offer. there should be no reason to even ask your DOB at this stage, but that's slightly less worrying. but most of all, i've never gotten a job from a recruiter that was worth it. they are trying to get a commission and that is all. apply directly for jobs YOURSELF. stay away from 3rd-party recruiters.
sangupta 13 hours ago 0 replies      
Must be a scam
sofaofthedamned 13 hours ago 3 replies      
I've had this recently in the UK where the client is Capita, who do insist on it.
sharemywin 7 hours ago 0 replies      
Some candidate submission systems at larger companies use that info to get a unique id so recruiters don't double submit candidates. At least that's what the told me. Not sure if it's true or not.
danaliv 12 hours ago 0 replies      
Run like the wind.
magoon 8 hours ago 0 replies      
Preying on job seekers is abhorrent. Try to find out who they are so that you can report them.
Kiro 10 hours ago 1 reply      
What does last 4 refer to in this case?
hoodoof 11 hours ago 0 replies      
JSeymourATL 4 hours ago 0 replies      
Employers, like your phone company and gas company, use your SSN to identify you in their databases because its a unique number. Its the lazy vendors way to track customers, and the lazy HR departments way to track job applicants. And its frankly irresponsible. > http://www.asktheheadhunter.com/7696/wanted-hr-exec-with-the...
Ask HN: How common is illegal web scraping?
12 points by ng-user  2 days ago   6 comments top 4
tenken 2 days ago 1 reply      
Web scaring is an "arms race". I was asked this weekend by a client, who found a Python scraping library for their sit on Github; how to avoid scraping.

Either remove your content from the internet or put up with it like we do spam.

The client linked this:http://stackoverflow.com/questions/3161548/how-do-i-prevent-...

But the problem with all these approaches, is the arms race problem. These solutions take developer time, and they can affect end-users. The army of scrapers can easily undo your efforts in short order making alot of these approaches an effort in futility.

gesman 1 day ago 1 reply      

Someone's TOS is not a law but mere a wishful suggestion to others who usually won't bother to read it anyways.

"You are not allowed ..." is the most laughable statement in TOS.

TOS may however remind of existence of laws.

Laws do or do not allow, TOS are not.

Laws do exist to protect copyrights and trademarks but scraping per se is not illegal.

kluck 1 day ago 0 replies      
It is happening. You can not stop it, only slow it down to the "human" pace. Any scraper performing actions with a browser (be it headless or with head) in a human pace can not be detected. Every human action (on a webpage) can be simulated so any data accessable by a browser (be it behind a login or not) can be retrieved. Certain captchas are also hard to crack but that is about all you can do: rate limiting and captchas.
wayn3 2 days ago 0 replies      
You can put up ToS all you want. I'm not agreeing to your terms by visiting your website (I'm not even visiting the site, my scraper is. Can a scraper sign a contract? I doubt it). Maybe law is f'd up like that in the US. Is it? Fine, I'll buy servers in Russia. Or some banana republic. Come sue me in the wonderful state of Nevis and see how that goes.

You can do a lot to prevent it. The best way to prevent it is to not have valuable data. The more valuable your data, the more effort we will spend on cracking your countermeasures and we will always win because this is our core business - to you its just a cost center.

Linkedin is one of the most notorious sites for trying to prevent scraping and they certainly have the funds. Yet they can't do shit about it and you'd think that they have it easy because they hide everything behind a paywall. Yet they can't prevent it from happening. Not even close. If they can't do it, you probably can't either.

And that's the really boring part. Do you know how many blank APIs there are in the web? People do their node.js and their frontend SPA bs and then they just dangle an API that is open for the world to scan. I could make a business out of scanning for exposed user data and feed them into a lawyer doing class-action lawsuits all day. Would be easy. Like really easy. So-called "engineers" need to learn how cryptography works. Or just reject unauthorized requests. Its really not that difficult.

To call out one prominent example: The Tinder API has been exposed ca. 2012 and ever since then, they didn't give enough of a shit to secure it. You can still build a tinder 3rd party app using their api.

Ask HN: Any tips on debugging Linux hibernate issues?
17 points by war1025  2 days ago   13 comments top 6
officialchicken 2 days ago 0 replies      
Start with a pendrive / USB boot and try different distro. Try both older and newer debian-based distros like mint or ubuntu which usually have better laptop support than vanilla debian to see if you can narrow down the problem.
amboar 1 day ago 2 replies      
This is a shot in the dark but some nasty hibernation bugs are fixed in 4.8[1]. It's probably worth booting a kernel from that series to see if it helps.

[1] https://lwn.net/Articles/701639/

war1025 2 days ago 0 replies      
I found [this thread](http://www.gossamer-threads.com/lists/linux/kernel/2306799) and it seems to describe basically what I am running in to. Unfortunately it drops off and I haven't found if it picks up again in a different thread.

Both laptops are only using the onboard Intel card.

tortasaur 2 days ago 0 replies      
Perhaps use smartctl to run a long test on the drive you're hibernating to.
Raed667 2 days ago 1 reply      
Might be a GPU driver issue. Are using the Nvidia binary?
eqyiel 2 days ago 1 reply      
I have the same problem with a Thinkpad x240. Never managed to figure it out, instead I just use suspend which works reliably.
Ask HN: Who are the other Elon Musk's?
25 points by juiced  1 day ago   20 comments top 10
sixQuarks 1 day ago 1 reply      
I've studied Elon Musk pretty closely, and have tried to find others that are similar, but I'm not aware of anyone, at least English-speaking.

The thing that really sets him apart, in my opinion, and something that a lot of people don't fully appreciate - is that he is the lead engineer / chief designer at Tesla and SpaceX.

So, you basically have in one person, someone who is both able to grow a multi-billion dollar company, while also leading the design and engineering of the products. It's very rare to find an individual with this type of skill running such a large company. For example, the CEOs of SpaceX and Tesla's competitors cannot really delve too deep into the engineering details.

If that were it, Elon would still be impressive, but he goes way further than this.

He is not only running one multi-billion dollar company, but two simultaneously. (You can almost say he is running 4 multi-billion dollar companies simultaneously if you include Solar City, and if you see the Gigafactory as a separate entity, not to mention he also oversees Open AI, which is very impressive by itself (he says he spends one day a week on it).

If that were it, Elon would be in a league of his own already, but what makes it even more impressive is that the companies he runs are both in very complex industries, and he is revolutionizing both industries.

fuqted 1 day ago 0 replies      
Alphabet (Larry Page and Sergey Brin) is doing a lot of things. From what I understand they're the most advanced when it comes to ML and self driving technology. They tend not to ship so they don't get much credit.

Jeff Bezos is in many markets as well though he seems more focused on making money than directing the course of humanity.

All in all I'd say Google has had a much bigger impact on our lives than either Amazon or Tesla / SpaceX has had thus far.

DrNuke 1 day ago 1 reply      
He has hard earned the resources to make it happen big time, there may be many others along the way having less or much less or using a comparable / even bigger pot for different goals.
dbs 1 day ago 0 replies      
Bill Gates.
oldbuzzard 1 day ago 0 replies      
Craig Venter
ccvannorman 1 day ago 0 replies      
Richard Branson
neom 1 day ago 1 reply      
jeff bezos
catenthusiast 1 day ago 1 reply      
Kanye West
dilemma 1 day ago 1 reply      
Jack Ma and Wang Jianlin.
aaron695 1 day ago 0 replies      
Warren Buffett
Ask HN: You've got one month, what's your challenge?
44 points by mezod  2 days ago   91 comments top 42
adimitrov 2 days ago 4 replies      
After 10 years of depression, carry over my good streak from last month and finally finish my studies so I can have a better job.

Whish me luck.

tjw 2 days ago 2 replies      
Come home from work and do one productive thing, every day. I'm tired of feeling lazy but not feeling motivated to do anything but play video games and generally be a slob.
dyim 2 days ago 0 replies      
* Get 100 active customer support agents on Panel Ninja [www.panelninja.com]

* Send cold emails to 1,000 potential customers

* Cut 15 seconds off my mile time

* Run 4 experiments to iterate on the cold email process

* Watch the Eagles beat the Giants, Falcons, Seahawks, and Packers :)

rayalez 2 days ago 0 replies      
- Learn React(complete the video courses I've started), and use it to build the project I have in mind(discovery platform for webdev learning resources).

- Keep making progress at my fiction/comedy writing. I've been struggling with it for a long time, but I've had a few epiphanies recently, and I want to finally make it work. The goal is as always - learn to competently craft my short funny science fiction stories.

But before any of that happens, I have to take a break, cut out the caffeine, and go through several days of withdrawal. It will be miserable, but I really have to make my body rest, sleep, and recharge. I can't keep taking more and more stimulants, it's not working anymore.

egypturnash 2 days ago 1 reply      
Get back to working on the comics pretty much every weekday. I've been bogged down in printing stuff and writing pitches and I just wanna get back to drawing some fucking comics.
foobarbax123 2 days ago 6 replies      
Find a better place to work. Just started as a software engineer, fresh out of college. I come home and I am constantly learning, which I enjoy, go to work and introduce new ideas and am shot idea not because of my ideas but beucasue im a newbie. Over the past couple of month has eatten away at my confidence and starting to just blow it off. :(
EdSharkey 2 days ago 1 reply      
I'm writing a little block-based file system for a virtual computer for kids, I hope to have it done this month!
n2dasun 2 days ago 1 reply      
Trying to participate in NaNoWriMo right now.
pieterhg 1 day ago 0 replies      
Launch my chat app for communities http://chatbox.chat

Launch my coliving platform http://colive.co

Make my VR game where you can catch street cats and eat ramen http://bar254.tokyo

random_coder 1 day ago 0 replies      
I've been making a Django app for over a week because I wanted to learn doing web dev. I hope to finish it another 2-3 weeks. So far, it's been a intimidating and yet fantastic experience learning about django, http, html dom, js, jquery, css, bootstrap, sqlite, orm, templates and such.
andars 2 days ago 2 replies      
Make one cool demo or write a post about something fascinating each week. Bonus level: twice a week.

This week's: https://andars.github.io/dynamic-system/

Unsure if I can do it, but I am going to try.

kwikiel 2 days ago 1 reply      
Build Flask app for tracking using wifi beacons (backend)
40acres 2 days ago 0 replies      
Well, I have an interview with Google on November 29, so for the past few days it's been that.
sixdimensional 2 days ago 1 reply      
Stand a project up, running on autopilot, which will make a minimum of $5k/month profit, 100% on my own without the need for any major expense other than time/effort plus simple and cost effective infrastructure.
atmosx 2 days ago 0 replies      
Hm, let me think:

 * Get the AWS sysops associate certificate * Run at least 60km (I know it's not much - but it's okay for me)

boyter 2 days ago 0 replies      
Id like to get searchcode.com into the top 20,000 Alexa website ranking's. To do so id like to refresh the code results on it more quickly and add project pages.
DrNuke 2 days ago 0 replies      
Can't work on my own apps recommender system atm, so taking part in the latest Kaggle competition from Santander instead.
guptabot 1 day ago 0 replies      
Grow my weekly newsletter to atleast 1000 subs from the current 100: www.tinyletter.com/harshalbot
code_champ1 2 days ago 1 reply      
I would compete on some crazy competition like MIT's battlecode (which usually is a month long event) ! I have worked several years, but none has given me the challenge/satisfaction of programming an AI Bot and compete with similar folks
gina650 2 days ago 1 reply      
Meet more cool futuristic founders, upload my 50th episode of Tomorrow's Tech podcast...and land my first sponsor!


fgandiya 2 days ago 0 replies      
Finish this Flask web app I've been putting off. And applying for internships.
pvsukale3 2 days ago 2 replies      
I would work on the job board site that I have been dreaming about for months. As soon as I'm done with the exams I will go to work on that site. Target : launching MVP by the end of first week of December.
quantumhobbit 2 days ago 0 replies      
Figure out how to get a job doing data science or something else interesting instead of working on CRUD apps. I have the skills, but I need to figure out how to get my foot in the door.
sn9 2 days ago 1 reply      
You could take a self-paced MOOC and master its contents in a month.
mdevere 2 days ago 1 reply      
play playstation all day for 30 days
elnado 2 days ago 2 replies      
Ugh, regardless of what we say we wish to do on this post, what I'm sure many of us lack is external motivation to do it. One app to help solve that is called Spar, developed by a friend of a friend (https://itunes.apple.com/us/app/spar!-get-better-at-stuff/id...). You set a goal with your friends, e.g. read a chapter every day, and put 20$ or so in the "pot". Whoever does the best at meeting the goal, gets the pot, and if you slack on your goal you lose the money.
tylerpachal 2 days ago 1 reply      
I'd like to enrol in a culinary arts class to learn more about cooking! I think a month would be enough time to complete some courses at one of my local colleges.
baccredited 1 day ago 0 replies      
Increase your savings rate by just 5% and retire years earlier
rodolphoarruda 2 days ago 1 reply      
I live in So Paulo, Brazil. I would try to get to Ushuaia by car via Chile all the way down to the Tierra del Fuego.
WorksOfBarry 2 days ago 0 replies      
I'm gonna spend a lot of the month working on my git client for IBM i.

New features, documentation and feedback

adolfoabegg 2 days ago 0 replies      
Start a side project a have in mind, build the MVP, validate it, get feedback.
tdy721 2 days ago 1 reply      
finish http://videopoker.academy

* Get a trainer version playable without sign in

* Add history and stats interface

* Work up a tutorial

* Integrate Stripe

* import style + FX from https://poker.hyprtxt.com

Matachines 2 days ago 2 replies      
Master stoicism and Deep Work.
fapjacks 2 days ago 0 replies      
Finish my notification and tracking app that I haven't had time for.
ak93 2 days ago 0 replies      
Completing my indroduction with ML and doing one small challenge based on ML!
votr 2 days ago 1 reply      
Become location independent.
nolite 2 days ago 1 reply      
Build a SPA in Vue.js
bgroat 2 days ago 0 replies      
I'm trying to build my email list to 1,000 people.
arvinsim 2 days ago 1 reply      
Make a plan to pivot my career for the next few years.
wuschel 2 days ago 0 replies      
Finishing a seed 2 fundraising campaign.
krapp 2 days ago 0 replies      
Actually finish a project.
empressplay 2 days ago 0 replies      
Ship and pay the rent!
       cached 8 November 2016 21:05:02 GMT