hacker news with inline top comments    .. more ..    18 Jul 2017 Ask
home   ask   best   5 months ago   
Ask HN: Your favorite technical document writing application
2 points by MVorlm  2 hours ago   2 comments top 2
jstewartmobile 1 hour ago 0 replies      
I've heard good things about this: https://ia.net/writer/It does things Ted-Nelson-style with transclusions. It's android/iOS, so I won't touch it, but people say nice things.

Personally, I like GitHub flavored markdown and a text editor. There are programs in all of the popular languages to convert that to HTML.

We tried MS Word years ago. The zipped 2007+ format makes the git repository blow up, so we dropped it.

leetintin 29 minutes ago 0 replies      
google keep :)
Ask HN: What are scientifically valid ways maximize my life expectancy?
16 points by mxschumacher  12 hours ago   35 comments top 16
Mz 8 hours ago 2 replies      
1. Eat right.

2. Exercise, preferably strenuously and several times per week.

I am not going to back that up with sources. It is easily googled and routinely ignored by people wanting fancy, quick fixes with a lot of flash.

Re accidental death:

I paid accident claims for over five years. Very few of the claims I paid were genuinely "Wrong time, wrong place. Shit happens." Not counting people gaming the system, even most legitimate claims had an element of "Why the fuck were you doing that to begin with???" In some cases, this element was glaring enough to make the claim deniable under the list of provisos that boiled down to "If you are doing something egregiously stupid and dangerous, we won't cover your so-called accident when this results in injury or death."

Some basics you probably already know:

Do not drink or do recreational drugs.

If you do choose to drink or drug, arrange ahead of time to do so under safe circumstances.

Follow the safety instructions on medication or dangerous equipment. Don't make an exception "just this one time."

Do not consistently be a horrible, horrible asshole to people. (I paid a claim where that basically got someone shot.)

If you own guns, dangerous equipment, etc, strictly follow safety practices. No exceptions.

rthomas6 8 hours ago 1 reply      
Here are some scientifically valid answers that are more interesting.

* Restrict calories to 30% less than you want to eat. (https://www.ncbi.nlm.nih.gov/pubmed/19075044)

* Starve your father when he was a child. (https://content.time.com/time/subscriber/article/0,33009,195...)

* Don't sit down very much. (http://www.npr.org/sections/health-shots/2014/02/19/27946075...)

* Don't take Prilosec/Nexium/Prevecaid. (http://www.cbsnews.com/news/heartburn-drugs-proton-pump-inhi...)

PaulHoule 12 hours ago 1 reply      
Blood transfusions are pretty dangerous. Isaac Asimov died of AIDS thanks to blood transfusions after cardiac bypass surgery, and even though there is better surveillance of the blood supply there will always be new infectious agents, see


awkwarddaturtle 8 hours ago 1 reply      
Just a caveat. A lot of these scientific studies tend to be funded by industries with an agenda. So I'd take scientific sources with a grain of salt. Every other day there is a study saying coffee is good for your heart, tea is good for your liver, so on and so forth.

Though most scientific publications are "peer reviewed", most of them are not "peer replicated".


As sad as it is, a significant portion of the published scientific material are false or can't be replicated.

I suppose peer reviewed scientific articles are better than old wives' tales but not by much.

> smoking alcohol? A plant based diet? Regular exercise? High mental activity?

Well according to some people, moderate drinking can reduce risk of heart attack by 30%. But who knows how valid those studies are.


tyrw 9 hours ago 1 reply      
HN is probably the wrong forum for health advice, as it's not really something you'd "hack". Your best bets are mostly mundane according to the large, peer-reviewed studies that have been done, and you could summarize them as:

* Eat a balanced diet, avoiding excess

* Exercise regularly, avoiding excess

* Don't smoke

* Don't drink more than a glass of alcohol each day, if at all

* Cross your fingers and hope for the best

db48x 12 hours ago 2 replies      
The problem with your question is that we can deal only with averages and statistics rather than with individuals. We might find that X increases the average lifespan of humans by 10 years, but that's no guarantee that it will help any particular individual human at all.

That said, I suggest jogging regularly; just don't get hit by a bus.

irremediable 11 hours ago 1 reply      
From my understanding of general health evidence, your best bet is:

* Avoid smoking and excessive drinking (excess is easier to reach than you think!).

* Eat a healthy diet (not too many calories, not too many carbs, not too much saturated fat -- in order of descending importance).

* Get regular exercise. Aerobic and anaerobic, plus flexibility. You want to be supple, strong and healthy.

* Avoid occupational hazards -- for the HN crowd, probably eye problems and posture problems. Just taking regular breaks from the screen will go a long way here.

* Make sure you get good healthcare, especially when you're older (60+).

* Have good genetics. (Sorry, not much you can choose about this one.)

sotojuan 11 hours ago 0 replies      
Exercise and fitness in general has worked for a while. I know 75 year olds that have exercised their whole lives and others who haven't - completely different.

Sure, it's not guaranteed but I think we can all agree that it's a good start.

vajrapani666 9 hours ago 1 reply      
I'm really surprised intermittent fasting hasn't been mentioned. I've found eating one meal/day or restricting eating to a 3 hour window to be very beneficial for my energy levels, focus, time, and financial habits. I'll probably live longer too,

> In recent studies conducted in overweight humans, caloric restriction has been shown to improve a number of health outcomes including reducing several cardiac risk factors (Fontana et al., 2004, 2007; Lefevre et al., 2009), improving insulin-sensitivity (Larson-Meyer et al., 2006), and enhancing mitochondrial function (Civitarese et al., 2007). Additionally, prolonged caloric restriction has also been found to reduce oxidative damage to both DNA (Heilbronn and Ravussin, 2003; Heilbronn et al., 2006; Hofer et al., 2008) and RNA, as assessed through white blood cells (Hofer et al., 2008). Thus, findings of initial human clinical trials appear to support the promise of caloric restriction demonstrated in animal studies, at least in overweight adults.


> In this review article we describe evidence suggesting that two dietary interventions, caloric restriction (CR) and intermittent fasting (IF), can prolong the health-span of the nervous system by impinging upon fundamental metabolic and cellular signaling pathways that regulate life-span. CR and IF affect energy and oxygen radical metabolism, and cellular stress response systems, in ways that protect neurons against genetic and environmental factors to which they would otherwise succumb during aging.


> The most common eating pattern in modern societies, three meals plus snacks every day, is abnormal from an evolutionary perspective. Emerging findings from studies of animal models and human subjects suggest that intermittent energy restriction periods of as little as 16 h can improve health indicators and counteract disease processes.


One last study, separate because this is on rats.

> Among the 137 rats, the male rat which lived the longest died at 1057 days and the oldest female died at 1073 days. Both rats fasted for 1 day in 2, but the optimum amount of fasting was on the average 1 day in 3. With this amount of fasting, the life span of the males was increased by 20 per cent, and that of the females by 15 per cent., but the life span of the fasted males just reached the life span of the female controls. Pre-experimental nutritional conditions and genetic factors had a considerable influence on any specific life span. There was a high degree of genetic uniformity in spite of different regimes of feeding and fasting.


JPLeRouzic 11 hours ago 0 replies      
There is an efficient way to maximize life expectancy, it does not involve taking risks with proposals bordering snake oil and it minimizes the medical knowledge you must acquire:

Employ at every time three personal high profile doctors at a salary far above what they could expect, and fire one of them each year. The choice of who is fired is based on written proposals by each of them. Having three doctors makes it possible to use majority logic. Make sure that two of them do not collude.

lordCarbonFiber 12 hours ago 3 replies      
On the other side of the question: why do you want to increase/maximize life expectancy? I'd focus on living a fulfilling life now, as opposed to trying to squeeze out a few more years after your body has started to fall apart.
jerrylives 9 hours ago 1 reply      
I'm 65 and still coding. My secret is to vape weed every day, which I've been doing since my late twenties when my then boyfriend showed me how to "hot knife" hash.
wcummings 5 hours ago 0 replies      
Smoke alcohol? What?
SirLJ 11 hours ago 1 reply      
I think it is about the quality of life, otherwise you might not live 100 years, but you might feel like it... My recepie is enjoy everything in moderation and this includes single malt and cohibas
FullMtlAlcoholc 6 hours ago 0 replies      
Besides restricting calories, limiting intake of orocessed foods, and exercising, maintain healthy social relationships and maintain a level of curiosity about the world
paulcole 6 hours ago 0 replies      
Do you want to maximize your life expectancy or figure out a balance of how to achieve a life that's as enjoyable as possible for as long as possible. A bunch of shitty years at the end really aren't likely worth it. But dying at 40 from partying too hard isn't likely worth it either.
Ask HN: What 5 software tools do you use most for work?
11 points by cagrimmett  13 hours ago   13 comments top 13
1_player 1 hour ago 0 replies      
Full stack freelance engineer:

Visual Studio Code, iTerm, Trello, Google Chrome, and Skype :(

cm2012 27 minutes ago 0 replies      
Marketing consultant:

Facebook ads

Google ads

Microsoft excel

Google analytics/analytics of choice

Mailchimp/Email automation of choice


jamesjguthrie 56 minutes ago 0 replies      
Research engineer

Every single working day for the past 3 or 4 years vim, terminal, C++, Chrome, and just recently CUDA.

redpandaattac 37 minutes ago 0 replies      
Game producer:

Unity, Sourcetree, Trello, Sketch.app, Apple Notes

jakebellacera 1 hour ago 0 replies      
Marketing web developer. Do web applications count?

Atom, git, PHP, Databricks, Google Docs

tmaly 31 minutes ago 0 replies      
vim, tmux, bash, perl, make
superasn 2 hours ago 0 replies      
[1] PhpStorm [2] adminer [3] Gdocs [4] Putty [5] Dropbox
wry_discontent 1 hour ago 0 replies      
Emacs, Chrome, Pry, Heroku, Git
twobyfour 12 hours ago 0 replies      
Software team lead / manager. Aside from the self-evident non-role-specific stuff (browser, email, slack):

1) Jira2) [Text editor of choice]3) Mac/Unix command line4) Git5) [To-do manager of choice]

pwason 12 hours ago 0 replies      
Firefox, M$ Office (:/), XenCenter, RoyalTS (all on Windows), and misc. Linuxy stuff..

I'm the IT Guy for a small non-profit research and development company in the higher education sector.

Firefox is used for Spiceworks, various web-based management consoles for our storage devices (and webmin on Linux VMs), and general web stuff. M$ Office is mostly just Outlook and Excel. XenCenter to manage our XenServer infrastructure, and RoyalTS is for RDC-ing to various servers and workstations. Most Linux admin is done via webmin, or shell.

Communitivity 12 hours ago 0 replies      
Emacs, Eclipse, Lein, Maven, Node. Two additional ones are in my kit box by default, for different reasons, Java and MS Office. Java is required for Lein, Eclipse, and Maven, and occasional Java components. Node is needed for tool automation, in my case. Emacs is used for general editing needs, and Clojure coding. MS Office is needed because any delivery which does not include documentation doesn't count, and many I work with require documentation in MS Office form.
NumberCruncher 11 hours ago 0 replies      
Data Scientist:

SQL Developer, SAS Enterprise Guide, SAS Enterprise Miner, Excel, Jira

We are a "SAS shop", therefore SAS is a must. Knowing other SAS products helps to recognize when a statement like "it is not possible" in reality means "I am not in the mood for working".

AnimalMuppet 12 hours ago 0 replies      
Emacs, gcc, Android Studio, Putty, and, um, Outlook.
Why did Apple remove the use of iCloud password from local OS X logins?
2 points by sharps_xp  5 hours ago   1 comment top
KiDD 3 hours ago 0 replies      
I don't know why they removed the option.What I do know is some time ago there was an issue that prevented you from signing in when using iCloud credentials leading to a lot of people being locked out of their computers.
Ask HN: What tasks do you automate?
362 points by flaque  1 day ago   300 comments top 89
naturalgradient 1 day ago 6 replies      
I take enormous pleasure in automating every part of my research pipelines (comp sci).

As in, I like to get my experiment setup (usually distributed and many different components interacting with each other) to a point where one command resets all components, starts them in screen processes on all of the machines with the appropriate timing and setup commands, runs the experiment(s), moves the results between machines, generates intermediate results and exports publication ready plots to the right folder.

Upside: once it's ready, iterating on the research part of the experiment is great. No need to focus on anything else any more, just the actual research problem, not a single unnecessary click to start something (even 2 clicks become irritating when you do them hundreds of times).Need another ablation study/explore another parameter/idea? Just change a flag/line/function, kick off once, and have the plots the next day. No fiddling around.

Downside: full orchestration takes very long initially, but a bit into my research career I now have tons of utilities for all of this. It also has made me much better at command line and general setup nonsense.

EnderMB 17 hours ago 1 reply      
My most proud "automation" was writing a bot that would play Farmville for me.

I was at university, and Farmville was all the rage on Facebook. My girlfriend wanted me to play because it'd mean she'd be able to trade stuff with me or something (I forget why exactly), and I eventually caved in.

After ten minutes of playing it, I was bored. I couldn't really judge people that would click plants hundreds of times, several times a day, though, because I played World of Warcraft. It was just a more interesting type of grinding...

I figured out that in order to grind through the game most efficiently, I'd need to plant Tomatoes every two hours, so I wrote a bot that would:

1. Spin up a VM.

2. Open the browser to Farmville.

3. Open up an automated clicking application I had written that worked on Flash.

4. Find the outermost vegetable patch.

5. Click in a 20x20 grid (or however big the whole area was).

6. Replant, and close.

I didn't tell my girlfriend about the bot, and I'd turn it off when I went to visit her, so she was shocked when she went on my farm to see that I was a higher level than her. I'd jokingly feign ignorance, saying that I was just playing it like her, until one day when I had left the script running and she saw my farm picking itself while I was studying.

zbjornson 1 day ago 2 replies      
All of my thesis project in immunology was automated, which involved several hours of blood processing repeated several thousand times (with some parallelization) by a team of a dozen robots. There are pics, schematics and vids here: http://www.zachbjornson.com/projects/robotics/.

I also like to say that the final analysis was automated. It was done entirely in Mathemtica notebooks that talk to a data-processing API, and can be re-ran whenever. The notebooks are getting released along with the journal article for the sake of transparency and reprodibility.

(Also, I automated my SSL cert renewal ;))

ajarmst 1 day ago 7 replies      
I'm the kind of nerd who greatly prefers writing automation code to doing anything remotely repetitive. (I'm afraid to work out the actual timings because I'm pretty sure that I often spend more time coming up with the automation than just doing the task would take).

I've got a script that automatically rips, converts and stitches together audiobooks from the library so that I can play them on my phone. It just beeps periodically to tell me to put the next CD in.

I also had a batch job that downloaded Doonesbury cartoons (including some delay logic so I wasn't hammering the server) and built a linked series of html pages by year and month. I've ported it to a couple of other webcomics so that I can binge read.

I also write a lot of LaTeX macros, doing things like automatically import and format code from a github gist into lecture notes (something like \includegist{C,<path/to/gist>), or autogenerate pretty PDF'd marks summaries for students from my home-rolled marks. database.

Another thing I like is building little toys to demonstrate things for students, like a Mathematica page that calculated the convergence rate and error for the trapezoidal rule (numerical integration) with some pretty diagrams.

I once wrote a bunch of lisp code to help with crypto puzzles (the ones that use a substitution code, and you try to figure out the original text). The code did things like identifying letter, digraph and trigraph frequencies, allowed you to test substitutions, etc.

As developers, we tend to focus on these big integrated projects. But one of the biggest advantages that people who can code have is the ability to quickly get a general purpose computer to assist with individual tasks. I write an awful lot of code that only gets run a handful of times, yet some of those projects were the most pleasure I've ever had writing code.

kvz 1 day ago 4 replies      
Since I have a toddler in longing for a house with a garden which starts ar 800k EUR in pleasant neighborhoods in Amsterdam now, which is above my paygrade. So i wrote a script that compares surrounding towns on a number of metrics (4+ rated restaurants per citizen for instance) and let's me know when there are houses for sale with a garden facing south (or north but only if it's sufficently long that we are likely to enjoy some sun (10m+), etc.

So far this has not resulted in us buying a house and the hours that went into the project would have probably long paid for a good real estate agent :)

egypturnash 1 day ago 1 reply      
I am not a programmer, but I've automated a few things in my life.

I self publish graphic novels. I have a script that runs on a directory full of page files and outputs a CSV in the format InDesign expects. I wrote it after manually editing a CSV and leaving a page out, and not noticing that until I had an advance copy in my hands and 400 more waiting to be shipped from the printer. That was an expensive learning experience.

I like to rotate my monitor portrait mode sometimes, but hate trying to rotate the Wacom tablet's settings as well. So I have a script that does this all in one go. It used to try to keep track of separate desktop backgrounds for landscape and portrait mode, but this stopped working right, so I took that part out.

I have a bunch of LIFX bulbs in my apartment. The one near the foyer changes color based on the rain forecast and the current temperature, to give me an idea of how to dress when going out, thanks to a little Python script I keep running on my computer. Someday I'll move it to the Raspberry Pi sitting in a drawer.

I recently built a Twitter bot that tweets a random card from the Tarot deck I drew. I've been trying to extend it to talk to Mastodon as well but have been getting "request too large" errors from the API when trying to send the images. Someday I'll spin up a private Mastodon instance and figure out what's going on. Maybe. Until then it sits on a free Heroku account, tweeting a card and an image of its text about once a day.

And does building a custom Wordpress theme that lets me post individual pages of my comics, and show them a whole chapter at a time, count as "automation"? It sure has saved me a lot of hassle.

shade23 1 day ago 5 replies      
- Downloading a song of youtube, adding meta data via beets and moving to my music lib

- Adding tasks to my todolist client from every app I use(including my bookmarking service when I bookmark with specific tags)

- Changing terminal colours based on time of the day(lower brightness in the evenings and hence dark colours, too much sunlight in the mornings and hence solarized themes)

- Automatically message people who message me based on priority(parents immediately/girlfriend a longer buffer).

- Filters on said messages incase a few require my intervention

- Phone alerts on specific emails

- Waiting for a server which you were working with to recover from a 503(happens often in dev environments) and you are tired of checking every 5 seconds: Ping scripts which message my phone while I go play in the rec area.

- Disable my phone charging when it nears 95% (I'm an android dev and hate that my phone is always charging)

- Scraping websites for specific information and making my laptop ping when the scenario succeeds(I dont like continuously refreshing a page)

I dont think several of these count as automation as opposed to just some script work. But I prefer reducing keystrokes as much as possible for things which are fixed.

Relevant to this discussion:Excerpt from the github page

>OK, so, our build engineer has left for another company. The dude was literally living inside the terminal. You know, that type of a guy who loves Vim, creates diagrams in Dot and writes wiki-posts in Markdown... If something - anything - requires more than 90 seconds of his time, he writes a script to automate that.


saimiam 1 day ago 8 replies      
My day to day decisions are mostly automated - what to eat for breakfast? what clothes to wear any given day of the week? when to walk my dog and for how long? When to leave work and which back roads route to take to get back home? Lunch options? When to call the folks? Exercise schedule? All automated.

It gets a little repetitive and boring at times but I'm able to save so much time and energy this way to focus on what's important to me.

MichaelMoser123 1 day ago 3 replies      
In 2003 I had a perl script to query the job boards for keywords , scrap the result and send out an application email with CV attached to it (I took care to send one application to a single email). I think this was a legitimate form of spamming - at that moment the local job market was very bad.
Toast_ 1 day ago 1 reply      
I'm aggregating flash sales and sending post requests to azure ml using huginn. It's a work in progress, but huginn seems to be working well. Also considering giving nifi a go, but the setup seems a bit over my head.



dhpe 1 day ago 1 reply      
I need to upload invoices every month from all ~20 SaaS products I subscribe to an accounting software. Most of the invoices can be just redirected from email to another SaaS that will let me download a zip file containing all invoices from a date range. Other software requires me to login to the product, navigate to a page and download a PDF or print an HTML page. I have browser-automated all of these laborious ones as well so everything will be in that zip file. Saves me 30 min monthly and especially saves me from the boring work.
xcubic 1 day ago 1 reply      
In Lausanne, Switzerland, it's very difficult to find an appartement because there are too few appartements for too many people and it mostly follows "First-come, first-served".

So I created scrappers for 3 websites + 1 facebook group. It simply looks for apartments with my specifications and notify me when a new one comes up.

I can say, I successfully found an apartment. The whole process usually takes at least 3 months, I did it in 1.

dannysu 1 day ago 5 replies      
A bot for reserving hotel rooms.

I wrote a bot to reserve hotel rooms a year in advance for a national park in the US.

It was so difficult to book. After couple days of failed attempts to reserve my desired dates, and after staying up late into the night one day, I went ahead and wrote a bot to automate the task of checking for availability and then completing the checkout process once available.

And... it worked.

rcarmo 1 day ago 3 replies      
- Data pipelines (as seen elsewhere here)

- Anything related to infra (I do Azure, so I write Azure templates to deploy everything, even PaaS/FaaS stuff)

- Linux provisioning (cloud-init, Ansible, and a Makefile to tailor/deploy my dotfiles on new systems)

- Mail filing (I have the usual sets of rules, plus a few extra to bundle together related e-mails on a topic and re-file as needed)

- Posting links to my blog (with screenshots) using Workflow on iOS

- Sending SMS from my Watch to the local public transport info number to get up-to-the minute bus schedules for some pre-defined locations (also using Workflow)

- Deploying my apps on Linux (I wrote a mini Heroku-like PaaS for that - https://github.com/rcarmo/piku)

- Searching for papers/PDFs on specific topics (built a Python wrapper for arxiv/Google/others that goes and fetches the top 5 matches across them and files them on Dropbox)

- Converting conference videos to podcasts (typically youtube-dl and a Python loop with ffmpeg, plus a private RSS feed for Overcast)

Every day/week I add something new.

(edit: line breaks)

jf___ 1 day ago 4 replies      
carving up marble with industrial robots


Cad -> robot code compiler is built on top of pythonocc

nfriedly 1 day ago 2 replies      
Paying all of my bills. All of them. My bank (Fidelity) can connect to most bigger companies to have the bills automatically sent to them and then they automatically pay it (with an optional upper limit on each biller).

For other bills, I got all but one to put me on "budget billing" (same amount each month, so Fidelity just sends them a check for that amount without seeing the bill). For Windstream, which varies by a dollar or two each month, I just send them an amount on the upper end and then let a credit accrue. Both of these require an update maybe once a year or so.

Windstream is a bit funny - I don't know why they can't pick a number and stick to it. Also, they apparently raised my "guaranteed price for life" a couple of times and didn't notify me until ~8 months later when they were threatening to disconnect my service for being more than a month behind. (They had turned off paper billing on my account but didn't actually enable e-billing - service still worked so I didn't even think about it. We eventually got it straightened out, but Windstream is ... special.)

Beyond that, I made a bot that automatically withdrew Elance earnings to my bank account (that got me banned for a week or so when I posted it to their forum).

I made another bot that bought and sold bitcoins and litecoins and such. It was moderately profitable until my exchange (criptsy) got hacked and lost all of my float (worth ~$60 USD at the time.)

I connected an Arduino IR blaster to my TV to make it automatically turn on my sound bar (the TV would turn it off, but not on?!) - http://www.nfriedly.com/techblog/2015/01/samsung-tv-turn-on-...

Oh, and of course, code tests and deployment. Nearly every git commit I make gets a ton of tests, and for most projects, each tag gets an automated deployment to to npm or bluemix or wherever.

nurettin 1 day ago 2 replies      
In my city, there are many stadiums which cause traffic congestion during rush hours. I made a scraping bot which tells me if there's going to be traffic on my designated routes the next day. Going to try making it an app and see if it's any useful to others.
The_Notorious 1 day ago 1 reply      
Find yourself a configuration management server such as Puppet, Chef, CFEngine etc, and learn to automate system deployment and management with it. I use Puppet CE as my main automation tool.

Use Python/Shell for tasks that are not well suited for a configuration management server. Usually, this is when procedural code makes more sense than the declarative style of Puppet manifests. Interactive "wizards" (i.e. add domain users accounts to a samba server, and create home directories for them) and database/file backups are my usual uses for these types of scripts.

Fabric is a useful tool to use with python. It allows you to send SSH commands that you put into functions to groups of servers in bulk.

I also use python for troubleshooting network issues. It has libraries to interact with all manner of network services/protocols, as well as crafting packets and creating raw sockets.

Look into PowerShell if you work in a Windows environment. Everything from Microsoft is hooked into PowerShell in their newer versions.

abatilo 1 day ago 0 replies      
A little different than what other people are doing, but I have tried to automate my savings. I use Mint to figure out what my budgets for things should be, then I use Qapital to automatically save the money I didn't spend but was budgeted.
profpandit 1 day ago 1 reply      
This is a great question. The PC has been around for a long time now. For the most part, users/developers have been sitting around, twiddling their thumbs and waiting for the tool and app gods to rain their blessings. This question begs the need to be proactively involved in the process of designing how you use your PC
fenesiistvan 1 day ago 0 replies      
Support tickets integrated with service monitoring.

Around 3 years ago, we started to get a lot of customers for our VoIP tunneling solution, mostly from UAE. Most of these were unfriendly customers abusing our support, so I started to implement a CRM to track "support points". I spend a half year to develop this solution (with lots of other functionality such as service monitoring) and when I finished, there was no any demand for the VoIP tunneling solution anymore :)

This is how I wasted half year instead to focus to solutions relevant for our business.

Thanks good, we started to have new customers again since last year and actually my CRM/support point tracking software is very useful now, but I still don't think that it worths 6 months time investment.

Conclusion: focus on your main business and dont spend too much time with automation and other helper software (or hire somebody to do it if your business is big enough)

dqv 1 day ago 0 replies      
A PBX that only let's you record voicemail greeting by dialing in and listening to the whole greeting before it can be saved. So... recording their greeting would take a good 15 minutes if they mess up and have to start over.

I wrote a simple lua script for freeswitch that dials the line, follows the prompts, and plays the person's greeting to the PBX. Of course, one day, the damn PBX will be replaced by freeswitch.

ecesena 23 hours ago 0 replies      
Tweeting. I suck at it. I started with a txt, which became a spreadsheet, which is becoming distrosheet.com.

Sooo slooowly that the homepage still has stock cats&dogs images. The most upsetting thing is that I've got more than one person telling me "I like the homepage". My mental reaction was "wtf!?". </rant>

Anyway, I still don't tweet much, but I'm getting there.

ASipos 1 day ago 0 replies      
Downloading fan fiction from fanfiction.net

I have written a Python script that builds a HTML out of all chapters of a given fan fiction and then calls Calibre to convert it to MOBI for my Kindle.

Unfortunately, my life doesn't have too many automatable aspects... (I am a math researcher.)

imroot 22 hours ago 1 reply      
My expense reports and timesheets.

The three shittiest parts of my job every week are:

- Approving timesheets

- Entering in my timesheets

- Entering in my expense reports

I've written a script that goes in using a phantom.js script, and automates the submission of my timesheet on Friday afternoon at 3:00 +/- 15minutes. It now takes into account travel time, Holidays, and approving time if I have time approvals due.

Same holds true for submitting expense reports in Oracle. I upload the receipt to Expensify, and as long as it's tagged properly in Expensify, it'll automatically generate the correct expense report in Oracle for the proper project based on the receipts in Expensify. This saves me, on average, about 6 hours a month.

patd 1 day ago 2 replies      
Most of my side projects have been about automating the little things that end up taking me a lot of time.

At my first job, part of my work (next to junior dev) was to deploy EARs on Websphere. I automated it so that people just had to drop it on a shared folder and I'd just take a look if it failed to install automatically.

I wrote a command-line tool to search and download subtitles https://github.com/patrickdessalle/periscope

I made a browser plugin to compare the price of the European Amazon and a few other websites (it grew to more countries and websites) http://www.shoptimate.com

And now I'm working on a tool that regularly checks if some of my content is getting adblocked because it's something I periodically do by hand http://www.blockedby.com

In the end, automating things can take more time than actually doing it. But if it's used by others and saves them time as well, it's gratifying.

leipert 1 day ago 1 reply      
Sorting my mails with imapfilter. I have a yaml file where I write down which mails go into which folder depending on sender or recipient or another header field. Runs on a raspberry pi every ten minutes between 8 and 8.
prawns 1 day ago 0 replies      
Downloading porn and culling the old stuff. Currently automated management of over 100TB and growing!
reddavis 20 hours ago 0 replies      
I automated my dehumidifier.

I wrote about it here: https://red.to/blog/2016/9/15/automatically-controlling-a-de...

and OS'd the Rails app: https://github.com/reddavis/Nest-Dehumidifier

neya 1 day ago 6 replies      
I had tons of startup ideas that I'd always wanted to give it a try. After a point, it became frustrating to test them out one by one, either by writing custom applications in Rails or use Wordpress. But, both costed me a significant amount of time.

For example, I had this idea for a travel startup for a very, very long time and I decided to build it on Wordpress. The monetization model was selling some E-Commerce items, so I naturally tried out some of the plugins and was shocked at how long it took for me to get a simple task done. I had such a terrible experience that I'd never recommend it to anyone. Wordpress by itself is fine, but when you try to extend it, you face so many hiccups.

That's when I realized there's no use blaming the tool. It's because of the differences in philosophies between me and the core Wordpress team. So, I naturally spent another 4 months writing a Rails app for this travel startup and still wasn't satisfied with my time to market. Clearly, there had to be a better, faster way?

In essence, I realized every online startup requires these components:

1. Authentication / Authorization

2. CMS - To manage content on the site, including home page, landing pages, blog, etc.

3. Analytics - To help track pageviews, campaigns, etc

4. CRM - To manage a sales pipeline and sell to customers. Also to know very well who your customers really are.

So, I went ahead and wrote this mammoth of an application in phoenix (using DDD's architectural patterns), that has all the modules above. Now, everytime I have an idea, I just login into my interface, setup the content and the theme/design and launch a campaign...bam! My idea is now live and I can test it out there on the market.

You can think of it like a complete combination of all the startups out there:

1. Mailchimp - I can send unlimited emails, track opens, analyse them. Handled by my marketing module. I can customize the emails too, of course.

2. Unbounce - I can design my own landing pages. Handled by my CMS.

3. Buffer - I can schedule shares from within my interface based on best times by engagement. Handled by my marketing module.

4. Hubspot - My system has a full, hubspot/zoho clone of CRM.

Here are some of the key highlights:

1. All my data is collected on BigQuery and I own it instead of sending to third parties.

2. There is no forced limitation on my marketing - For example, if you used mailchimp, you know you're limited to just 2000 recepients. If anything more, it quickly gets expensive. But my system is my own, no limitations whatsoever.

3. I can spend less time developing my idea and more time executing it.

4. I have my own custom business dashboard for each of my idea, that tells me how good/bad it's performing, so that I can turn it off when needed.

Probably not the kind of automation you were expecting, but yeah.

EDIT: Added more details.

wslh 1 day ago 1 reply      
Designing and developing UIs. I want to develop web UIs like you develop UIs with Visual Studio or Xcode. I cannot believe how much efforts we need to build and modify web experiences.
raleigh_user 17 hours ago 1 reply      
I automated pretty much all groceries & goods I use through a combination of Shipt and Amazon Subscribe and Save. Took a few hours one Saturday to compile list of everything I use and estimates on needing more but I genuinely enjoy not having to think about if I need toothpaste or if I have food for dinner
foxylad 23 hours ago 0 replies      
Easy - anything boring. "Boring" usually means repetitive and not mentally challenging, which to my mind is exactly what computers are for.

Even if the task happens infrequently and the script takes longer than the task, automating it is worth the investment:- It prevents having to remember or re-discover how to handle the task next time.- It ensures the task is handled consistently.- It prevents potential manual errors.

For example, on the financial side, my company runs bank accounts in five countries, each with different GST/VAT taxes. Over time, I've developed scripts that grab the mid-month exchange rates that our Internal Revenue service requires to be used; crunches downloaded bank transaction data into categories (including tax inclusion or not); and exports it all into a huge Google spreadsheet. This provides global and country balance sheets and profit and loss, and when tax reporting time comes for each country, a tab on the spreadsheet provides all the figures so filling returns is a five minute process. Occasionally the scripts will flag an unrecognised transaction, and rather than manually correcting this in the spreadsheet, I'll add a rule to the script so it is recognised next time.

Cumulatively this probably took several tens of hours to code, but it means we don't need to employ an accounts clerk. It takes about fifteen minutes a month to download the bank data (manually - oh how I wish banks had APIs) and run the scripts. Our accountant loves this - the spreadsheet is shared with him, he can check our formulae or add other metrics, and he prepares our annual report an order of magnitude faster than any of his other clients.

natch 1 day ago 0 replies      
Many things. Trivial one, recently wrote a script to electronically sign six documents from my divorce and related tax paperwork using ImageMagick. Just to avoid having to do it with Gimp or Preview or some other GUI tool, and then re-do it when there are revisions. Yes there are online tools but I'm working with people who don't use those, nor do I want to upload these documents anywhere I don't have to.

Often I'll spend as much time writing an automated solution as it would take to do the task manually, even if I'm only going to run the automated solution once. The work is way more fulfilling, and I can fix mistakes easier, and can learn and develop new techniques.

ibotheperfect 18 hours ago 0 replies      
I was downloading beatport song by finding them from youtube. Then I decided to automate this. I wrote a code that finds them from youtube and download automatically. Finally I decided to make it a website so that everyone can use. www.beatportube.com
l0b0 20 hours ago 0 replies      
Some of my own projects that I've ended up using frequently - you can see what they do from the command structure:

 mkgithub ~/dev/new-project fgit pull -- ~/*/.git/.. ~/dev/*/.git/.. ~/dev/tilde/.screenlayout/right-tack.sh
And some less frequently used tools:

 mount-image ./*.iso vcard ~/contacts/*.vcf ~/dev/vcard/sort-lines.sh ~/dev/vcard/sorts/Gmail.re ~/contacts/*.vcf img2scad < example.png > example.scad indentect < "$(which indentect)" qr2scad < ~/dev/qr2scad/tests/example.png > example.scad schemaspy2svg ~/db
So yeah, automate all the things.

kensoh 1 day ago 0 replies      
I automate as much as possible the tasks involved in coding web automation scripts - https://github.com/tebelorg/TagUI
simula67 22 hours ago 1 reply      
Wishing my friends Happy Birthday on Facebook, with Birthday Buddy : https://chrome.google.com/webstore/detail/birthday-buddy/cil...
ghaff 1 day ago 0 replies      
I wrote a little script [1] to automate a lot of the steps associated with publishing a podcast. There's still manual work but this takes care of a lot of the fiddly repetitive detail work that's both time-consuming and error-prone. Especially if I do a batch of podcasts at an event, this is a lifesaver.

[1] https://opensource.com/article/17/4/automate-podcast-publish...

noahdesu 1 day ago 2 replies      
I frequently wipe and install from scratch my Linux desktop and laptops. I've been spending more time recently working on setup scripts that automate as much of this as possible. Things like installing packages, setting up firewall, checking out code projects and installing dependencies. Currently this is mostly a bash script plus my dot-files, but I'm always looking for ways to improve this process.
blockchan 1 day ago 0 replies      
Transfering lead data to Salesforce from Intercom and Slack by sending simple messages like "SQL" or "email@example.com to sf"

Receiving and sending documents to proofreading

I described them in details here: https://www.netguru.co/blog/automating-myself-out-of-the-job...

w3news 20 hours ago 0 replies      
I write a browser extension so i dont have to click or type a lot on some websites.Firefox: https://addons.mozilla.org/en-US/firefox/addon/clickr/Chrome: https://chrome.google.com/webstore/detail/clickr/kbegiheknic...

Also very usefull as web developer to test some javascript on a website.

agopaul 1 day ago 0 replies      
I setup crawlers to make specific queries on various website. I used them in the past with:- used car dealer websites- job posting boards (found a job a few years ago with that)- craiglist-like websites- coupon websites (looking for sushi restaurant deals)- etc

Also, not sure if that counts, but I have monit+scripts monitoring backups timestamps and DB replication

anotherevan 1 day ago 0 replies      
I read a lot of articles by saving them to Pocket and reading via my ereader. I wrote a little PHP browser based application that interfaces with the Pocket and hn.algolia.com APIs that helps me to follow up on articles in related forums such as Hacker News and track my reading habits.

Naturally I called it Pocket Lint.

pisomojado_g 1 day ago 1 reply      
Library book renewals. I have an AWS Lambda function that runs daily, scrapes html from my public library (they have no API), and if a book is due within the next day, renews it. If I've reached max renewals, it sends me a notification.
sprt 1 day ago 1 reply      
Buying crypto weekly using Kraken's API.
paultopia 1 day ago 0 replies      
Scraping and compilation of various annoying web content formats, with varying levels of efficacy -- e.g. https://github.com/paultopia/scrape-ebook for open source PDF chapters and https://github.com/paultopia/spideyscrape for readthedocs-esque formats.

iCloud documents edited on iOS -> versioning and shoving in a private github repo -- https://paultopia.github.io/posts-output/backup-to-git/

CV updates via template to HTML, latex, and docx

vgchh 1 day ago 0 replies      
1. Code formatting

- gofmt for Go, Google Java Format for Java

2. Code Style Enforcement

- golint, govet for Go, CheckStyle with Google Style for Java

ajarmst 1 day ago 2 replies      
I consult the relevant XKCD to decide: https://xkcd.com/1205/
xs 1 day ago 1 reply      
I just figured out how to use ansible and python to script out changing the passwords for all the network gear in the office. It uses a random password generator api https://passwordwolf.com to fetch a new password, changes it on everything, then sends me the new passwords. I'm changing passwords monthly now but it works so well that I might set it to weekly.
hellbanner 1 day ago 0 replies      
It's really simple; I automate creating builds for the game www.QuantumPilot.me

rm -rf ./QuantumPilot*rm -rf ./QuantumPilot* electron-packager ~/ele/electron-quick-start/ QuantumPilot --platform=all --icon=/Users/quantum/Desktop/QuantumPilot.icnsopen .

for some reason, OSX has trouble deleting the Linux folder the first time. I've heard Itch.io has a CLI for this but I haven't tried it yet. https://github.com/itchio/butler

fantispug 1 day ago 0 replies      
I automated my wedding seating cards and plan.

I managed invitations as a CSV (who had been invited, who responded yes and no, addresses and dietary requirements).

I designed the placecards and seating plan as SVG in inkscape with special text I used as {templating parameters}.

I could then produce all my place cards and seating plan from a simple simple script. This was handy when guests changed their RSVP a week out from the wedding when I had little free time and I could make a change instantly. (Although admittedly I spent more time getting the layout right for the seating chart than if I had done it by hand).

greggman 1 day ago 1 reply      
In the past I've always automated exporting from Maya, 3DSMax and Photoshop, meaning I don't require artists to export from either. The artist saves the source file in the project, tools build from that to the final format for the app/game.

The more typical workflow is that artists export .JPGs or .PNGs manually from Photoshop and somewhere else save their .PSD files. Similarly with 3SDMax or Maya they'd manually export using some plugin. That seems wasteful to me and error prone. Source files get lost. Artists have to maintain multiple versions and do the export manually which seems like a huge waste of time. So, I automate it.

david90 21 hours ago 0 replies      
I automate Stats of the products from Google Analytics using Google spreadsheet.By using appscript, I extract all key metrics such as activation rate/ retention rate from the raw data.

Then when I need to report all stats of multiple product, there is another automated script for me to aggregate them.

Saved me hours of context switching and copy and pasting.

ehudla 1 day ago 1 reply      
Preparing purchase form for university library and letting me know when books I order become available.


mxxx 23 hours ago 1 reply      
I get a weekly newsletter with a bunch of music recommendations in it, which I had been manually adding to a Spotify playlist.

So I recently wrote a CLI in Node that takes a URL and a CSS-style query selector (ie, '.album-title'), then scrapes the page, searches for each found instance and adds them all to a spotify playlist.


kogus 1 day ago 0 replies      
I do contract work for a few clients. I always automate the boring tasks of vpn'ning, firing up remote desktop, connecting to database servers, their email system, etc.

Automating that is fiddly and tedious, but it's worth it because I can just click a button and get a menu of clients. I choose one, and in about 10 seconds my machine is ready to go on their work.

ldp01 20 hours ago 0 replies      
Clicking! I wrote a powershell script for Windows which mimicks the autoclick functionality which Ubuntu has in it's accessibility options. I also added double/triple clicking by twitching the mouse a bit.

It takes some getting used to but I feel it helps avoid forearm soreness.

sergiotapia 1 day ago 1 reply      
Download media. I have Sonarr+Radarr+Plex. I don't spend much time looking for media.

Code reviews. Using something like CodeClimate to automatically check code quality before anyone actually reads the code.

Axsuul 1 day ago 0 replies      
I automate filtering my RSS feeds, or creating a weekly digest of emails that are not priority (bank statement emails, receipts, etc), crawling certain pages that I need to monitor and creating new RSS feed items on updates, weekly digests of top Reddit posts for specific subreddits, monitoring flight deals that originate from my airport.

I find that converting a lot of unimportant emails into RSS feed items has been a huge win for me.

anotherevan 1 day ago 1 reply      
Wrote a program that tracks Australian movie release dates for movies I'm interested in. Sends a daily email if a release date moves, or there a new movies for me to flag my interest in.

Interfaces with themoviedb.org for plot summary, cast and crew info and such. Interfaces with Google Calendar for writing entries for each movie I'm tracking.

koala_man 1 day ago 3 replies      
olalonde 1 day ago 0 replies      
I recently had to frequently create private git repos for job candidates (containing a coding challenge). I built a simple web app that does it all in one click (as a bonus, my non-technical co-founder can also use it). https://i.imgur.com/HhQP4lX.png
arikr 1 day ago 0 replies      
Great thread, thanks OP.
philip1209 1 day ago 0 replies      
I liked writing an internal command line utility for our Go codebase. It automates common dev commands like deployments (including installing dependencies, migrations, etc), sending test emails (eg to check formatting), and running smoke tests. Pretty minor, but it makes my life a lot easier. I plan on expanding it more for accessing prod and dev APIs.
vira28 1 day ago 0 replies      
I use slack a lot for the communication.

I have automated whenever there are significant events happen in our app, I will get notified. Its simple to implement. Configure the webhook.

Also, I did things like getting notified whenever there is a commit, pull request or push in your source control.

sawmurai 1 day ago 1 reply      
Commit hook that aborts commits if the projects code style is violated by one of the changes/added files
gottlos 1 day ago 1 reply      
Shopping list via Oscar, barcode scanner, open food facts

Aircon via temp sensors and node-samsung-airconditioner

still working on Owntracks/mqtt for useful automations on arrival home

lights plus motion sensor, lihht color by time of day (red at late night to save vision)

bakli 1 day ago 0 replies      
I've written a script which helps me copy-paste files from their folders in Material Design image library to my android project. This saves me at least 4 copy paste, and then renaming operations.
spinlock 1 day ago 0 replies      
I've automated deployment of my side project. When I merge a pr in github to master it will pull the new build and restart any process that's changed.
patrick_haply 1 day ago 1 reply      
Time logging. I use one piece of software to track my time, then fan those time logs out into the various pieces of software that need to know about them.
welder 1 day ago 0 replies      
I automate my time tracking using https://wakatime.com
fest 1 day ago 1 reply      
Tracking packages so I could batch my trips to post office.

Simple web interface where I have a list of packages I've ordered with the last status update from post service web tracking for.

utanapishtim 1 day ago 0 replies      
If I have to update a file programmatically when I make certain modifications to a codebase I'll write a script that automates the update.
SirLJ 1 day ago 2 replies      
Stock market trading systems, so I don't have to watch screens, also backups and also constantly improving monitoring for smooth operations
jessedhillon 1 day ago 1 reply      
I have a script that downloads bank and credit card transaction data, then applies rules to create a journal in GNU Ledger format.
borntyping 1 day ago 0 replies      
Anything I have to do more than once. If I have to do it a second time, I'll probably have to do it a third..
surfingdino 21 hours ago 0 replies      
Saying "no" to meetings and interruptions. I have a box with a big "NO" written on top of it. Whenever someone comes by to ask me "how are you doing?" I tap the box.
based2 1 day ago 1 reply      
a collegue is doing JIRA exports to Excel / MS Project.
webscalist 1 day ago 1 reply      
restart all things every night.
hacker_9 1 day ago 0 replies      
My build process.
edwilson 1 day ago 0 replies      
i wrote little sync script to my server. it is save my mysql backups to google drive.
noiv 1 day ago 0 replies      
On the long run? All.
swayvil 1 day ago 0 replies      
All conversations.

In the case of f2f (face to face) I just let my phone run me like a peripheral.

canadian_voter 1 day ago 0 replies      
I wrote a bot that automatically comments on HN when certain topics appear.


This post has been automatically generated and may not reflect the opinion of the poster.

probinso 1 day ago 1 reply      
I automate things that a computer can do
bearton 1 day ago 0 replies      
I automate legal documents usings Advobot (advobot.co), a messenger based chatbot that walks you through drafting legal documents. It makes drafting legal documents easy and conversational and is much faster than traditional methods. I can also use it from my phone, which makes drafting legal documents on the go much easier.


Huhty 1 day ago 0 replies      
MY team and I run a reddit/HN-like community platform called Snapzu and we automate most (90%) of our social media channels.

We have 15 main categories, each with their own Twitter, Medium, WP, Blogger, etc. Here's an example of our science Twitter account: http://twitter.com/@Snapzu_Science

amingilani 1 day ago 0 replies      
Oh boy, sigh, I wish I could share something I just automated, it's insane. Like, everyone that sees it tells me it's pure genius.

Problem is that it isn't ready to for the public. I'll do a show HN next week, but by GOD it is a brilliant piece of automation and scaling :P

Soon (this is more for me than anyone else, i'm literally bursting with pride right now)

Ask HN: How much to charge for our API?
7 points by essentia  6 hours ago   1 comment top
fenier 2 hours ago 0 replies      
A few different things here.

1: Unlikely, most often this leads to complicated pricing structures, and would you really be willing to take less from a store using it to sell... Candy vs a Store using it to sell say, Ovens.

2: It's likely better based on usage.

3: That is likely integration cost + contracted usage / time-frame.

4: Figure out what your infrastructure can support. Get estimated traffic from the types of sites you want to be a part of. Is the traffic on every page, or just the 'thank you' page. Do comparisons. Chances are you'll need adjustments (either on the API itself, or the inbound traffic) to avoid performance issues. Multiply that by the number of customers you expect to get a rough approximation of the total calls and the max ballpark of each customer. Recommend coming in somewhere below the Max throughput as the targeted baseline cap (figure out if cap is daily, weekly, monthly, quarterly, etc, and how those differences affect your inbound traffic).

Some things to think about...

Does the API have security on it that needs to be configured?

Do you have a customer facing Dashboard that proves to the customer that your product works via API analytics (how much traffic they've used, etc)?

Do you have a customer facing Dashboard that allows the client to make any changes to the configuration of the data return, or is that all done in the URL signature.

Can the requested Signature and the Dashboard have different configurations, if so, which wins?

Do you have a Analytics integration package that proves to the customer that your product works?

Do you have an idea of how your product would work in a A/B test scenario?

Do you intend to prove value real time, and if so - does that mean your API needs to account for 'hold out' scenarios to establish a comparison baseline?

Do you have your API documented for Developers, including sample requests and same responses to build their integration around?

Ask HN: How much are you earning as a freelance app developer?
131 points by cronjobma  10 hours ago   86 comments top 24
throwawaytree 10 hours ago 7 replies      
I make $7 US dollars an hour designing and developing apps as a full-time employee. Im paying off a new car, pay rent, and live quite a good life compared to others in my country (third-world country).

Compared to other countries salaries, mine is awful. Compared to local salaries, its actually about 4x the minimum wage. The cost of living here is quite low (I pay 150$ per month for a single bedroom with bathroom).Where this kind of salary hurts is when:

- traveling

- buying online

- saving for the future (maybe I will want to move overseas, and I also need savings for emergencies)

- paying for study (courses, uni overseas)

- buying work computers or phones

- buying software or services (e.g. Photoshop, Sketch)

amingilani 9 hours ago 1 reply      
I don't want to share my exact rate, but I easily make a month what a Silicon Valley engineer at a seed startup can.. and since I live in a developing country it's an order of magnitude more than most people my age.

If you're a brilliant engineer and are looking to work for a freelance app developer, I recommend Toptal[1].

While I now work at Toptal, I first joined the company through their freelance network, got a project with one of their clients, and eventually was onboarded onto the company itself. My experience with them started as someone that "wanted to work for international clients out of Pakistan" and it was brilliant. I whole-heartedly recommend joining Toptal for freelancers looking to get something going on the side. You can choose your own rate, so you can go as low as $10, or go as crazy as, jeez, I dunno, $500.. although the higher you are, the more difficult it is to land a client.

[1]: Toptal Referral link: https://www.toptal.com/#contract-just-respected-software-arc...

mthomasb 10 hours ago 3 replies      
Hey all, Matt from Bonsai (YC W16) here. We provide contracts, proposals, invoices, and other tools to freelancers, mostly developers and designers.

We used our anonymized data to break out what freelancers earn with different experience levels, skill sets, locations, etc: https://www.hellobonsai.com/rates

seibelj 10 hours ago 1 reply      
I know a guy making $10-15k a month from his apps. He's a full time employee now, but when he had kids, he stayed home, taught himself android, and made apps for 5 years while his wife worked full time. Now they are in maintenance mode and print cash.
dmilicic 8 hours ago 0 replies      
I'm an Android and Ruby on Rails dev and I've been working as a freelance for a couple of years now.

I am making quadruple the amount my peers are making in Eastern Europe while working less hours and remotely.

Most clients I get is through networks such as Toptal, which I would wholeheartedly recommend. I'm also a member of Gigster, which I can't quite recommend at the moment, and there is CodeControl and Povio labs which I would also recommend.

I think the best approach is to sign up for a number of these networks. It will definitely kickstart your freelance career and will help you have a constant stream of potential projects and offers.

However, do avoid websites such as Upwork or other networks which don't have a technical interview process as these are very likely flooded with extremely low-wage and/or low-quality workers. It is much harder to land a good client on these websites.

Here's my Toptal referral link: https://www.toptal.com/#work-with-the-best-programmers-today

But again, don't just apply there :)

jasonswett 9 hours ago 2 replies      
For the last few years I've made a little over $100K/year. This is mostly from doing staff-aug-style Ruby on Rails programming at $100/hr.

This year I've transitioned into a mix of coding and training. From training I've earned between $5,000/week and $13,000/week.

defarobot 10 hours ago 2 replies      
I'm 1/3 of a three person dev. shop does that count? We charge 250/person/hr and have been doing 40+ hr weeks for the last few years. We'll also make some margin if we need to sub out occasionally as client needs increase. This stability is really shaky though as all this work was from a single client.
chris_engel 9 hours ago 1 reply      
I am a a web (app) developer - not sure if that counts :)

Right now I am working as a frontend lead for react apps and make 75-80 / hour. I am living in Frankfurt, Germany.

There is a huge shortage of experienced javascript developers here.

bsvalley 9 hours ago 3 replies      
App freelancing (in the US) has been killed by cheap hourly rates thanks to globalization. As a client, why would I pay $100/h for a local Dev versus $10/h for a dev located in India or anywhere else where the cost of living is much lower?

As a full time "app" developer I make $200K/y in the US. I tried freelancing on the side but it's pretty worthless. We're talking pennies by hour spent coding.

throwawaycash 9 hours ago 2 replies      
I make about 0-300k/year fixing apps that others either weren't able to finish or where they architected themselves into scaling issues. Aside from that, I am a part time programming consultant who makes about 80k a year (I have a chronic illness so I spend a lot of time not working, and it's helpful for me to work in intense bursts with rests in between. It's difficult for me to have normal full time employment in the US because of the chronic illness.)

It averages out to about $250k/year on 30/h/week

BartSaM 10 hours ago 0 replies      
I see not many people want to associate their usernames with income info. I am a web app and mobile app developer and I make around $25K a year. This excludes any extra and side projects or gigs from other areas (marketing). I plan to increase this to $60K by starting doing niche projects soon and entirely focusing on development, but for now, I am focusing more on my side projects.
jiblyyyy 10 hours ago 0 replies      
Varies from 5 to 6-figures/y, working mainly for large companies, mostly in the edtech space. (http://jibly.com)
bintreethrow 9 hours ago 2 replies      
I have 3 API services, 2 desktop apps & 3 iOS+Android apps that I have developed over the course of 7 years after my CS engineering degree in a third world country, pretty much like the @throwawaytree here. My earnings are at average rounded converted to 6000 USD/month less server/misc. costs. I live with my parents(no rent) in a village in this state in India https://en.wikipedia.org/wiki/Kerala . I am 29. I think I have enough savings for a lifetime and most of the revenues are on auto pilot.
HekaHouse 10 hours ago 1 reply      
From 120-180k over the last 5 years or so, typically doing prototypes and MVPs for startups across platforms.

Almost every project involves web servers, web clients and mobile clients.

Mostly self taught but also studied cognitive engineering which has helped a lot in understanding how to create systems and work with AI.

simon83 6 hours ago 1 reply      
I'm not freelancing, but I'd love to hear advice from other freelancers.

I have 11 years working experience as a full stack web developer and I think I'm pretty good at it by now. I'm currently employed and underpaid, and I live in Germany. I have no idea how I'd go about freelancing. What would be your advice to get me started?

morcutt 5 hours ago 0 replies      
Last year ~115k. If I was actively seeking clients all year, I could get that number up much higher. I want to work on side projects though. That was with a 40/hour a month retainer and one big job that lasted ~5 months.
asow92 10 hours ago 1 reply      
I work a full time iOS gig and do freelancing on the side. Typically I bring in an extra 10-20k per year at around $100 per hour depending on the job.
b_zak 8 hours ago 0 replies      
I live in France.Beside my work, I take 4 weeks a year o teach software development (AngularJS, Spring, Struts, Apache CXF,...). The rates in France start at 300/day (7hours).

Additionally, I develop apps (APIs, AngularJS apps, etc.)10 to 20 hours a week (evenings + weekends) with rates starting at 35/hour.

drchaim 8 hours ago 1 reply      
This threads make me mad.In a theorically developed country making about 10/h from freelancing as a side job.Mostly web with Python/Django and frontend.
jibreel 8 hours ago 0 replies      
I do Web and API for apps. while my rate is 20$/hour i most often end up with a per-project price.
ne0free 9 hours ago 0 replies      
I had one client, he paid me 65-70$ for scraping escort sites..He had it coded from some one in portugese, it was pho scraper..So i added 7 more sites .. and finally i quit becoz i was not getting private time .. every time there were people arround me Btw i am from india.. ne1 looking for freelancer (php, nodejs, go, etc..) can get in touch..
jfmandroid 7 hours ago 0 replies      
The rates vary a lot depending of where the freelancer is located.

From the most expensive to the more cheapest (in general):

- US & UK

- West Europe

- Est Europe & Latin America

- Middle Est & Asia

In Latin America the rates normally go from 20 to 40 USD per hour depending of experience.

juanpotato 8 hours ago 0 replies      
I'll tell you once I get any clients :(
testb 9 hours ago 1 reply      
College student, doing Android + light backend work.


Caveat is that I've only had 1 client so far.

Ask HN: How do you version control your neural nets?
38 points by mlejva  1 day ago   12 comments top 9
taroth 9 hours ago 0 replies      
Shameless plug: https://hyperdash.io

I got tired of maintaining one-off scripts to do recording, so I started working with friends on a dedicated solution. Today it lets you stream logs via a small Python library, then view individual training runs on an iOS/Android app. Takes less than a minute to get setup.

We're planning on expanding to model versioning in the next few weeks. Interesting to see how others are thinking about it. If you have model versioning thoughts you dont feel like posting here, drop me a note at andrew@hyperdash.io

btown 1 day ago 0 replies      
If your neural net config is in a relatively standalone file, or you can mark it with a special comment block, you could have your test runner actually read the source file, regex it out, and concat the source block, date, current git SHA, and performance metrics into a "neural_runs.txt" file. If something else about your data pipeline is changing as well, e.g. filter settings on your image preprocessing, you can throw that in there too.

If you check this in, then every commit will include the diff of everything you tried to get there alongside the final source file, and additionally that file will serve as a single historical record for everything you tried for all time. Asking yourself a month later "did I ever try cross entropy" is as easy as grepping the file.

Heck, you could insert into a database as well if you really wanted to, and visualize your performance changes over time a la http://isfiberreadyyet.com/ . Sky's the limit.

kixiQu 1 day ago 0 replies      
I am very interested to see what people's answers are for this, because I pine for a version control system designed for the twists and turns of experimental investigation rather than the needs of engineering implementation. I very much suspect that some sort of structured approach to one's commit messages might be key, and a careful mapping of DAG concepts to experimental ones--branching as the modification of an independent variable, with a base commit selected as the control point of comparison? Would one want to be able to rebase in order to compare against a different point? What would the semantics of merges represent?
agitator 1 day ago 0 replies      
Maybe write a shell macro to pull accuracy and error into the commit message along with your comment on the changes. You could also add some automation to automatically branch if your test results are worse than before, so if you hit a dead end on that branch and realize the experiment didn't go well down the line, you can head back to where you branched, or if the end result works, you can merge back into your starting branch.
cityhall 1 day ago 0 replies      
I've been trying to do this better recently after having some non-reproducible results. I've settled on taking all hyperparameters (including booleans like whether to use batch norm) from a global dict. Instead of commenting and uncommenting lines, I look up a key with a default value, adding the default to the dict if it wasn't there. Then I print and log the dict with the results.

I end up with a bunch of code like:

 if get_param('use_convnet_for_thing1', True): convnet1_params = get_param('convnet1_params', None) thing1 = build_convnet(thing1_input, convnet1_params) elif ...
By logging the hyperparameter dict, source checkpoint, and rand seed, results should be reproducible.

This works well for rapid iteration like in jupyter notebooks. For models that take days to train, you might as well use source control for your scripts.

rpedela 1 day ago 0 replies      
Is there any value to the code in failed attempts or do you just want a log of things you have tried?

If the former, you could try a single experiment branch and use tags to denote different experiments. Add a tag when you finish an experiment then overwrite with your changes for next experiment and repeat. This would keep all the changes while not have having a huge number of dead branches and the branch could be merged when necessary.

If the latter, why not an experiment log that is checked in which has a similar form to a change log? Or maybe create an issue and branch for each experiment then update the issue with results and delete the branch?

p1esk 22 hours ago 0 replies      
Why would you manually log your models? In my NN experiments, I automatically write the list of all hyperparameter values and the corresponding performance to a file. In addition, I automatically generate and save graphs showing the results, typically one graph per a nested 'for' loop.
andbberger 8 hours ago 0 replies      
Not just for neural nets - balancing experimentation against building reusable tools is probably the biggest logistical challenge in scientific programming in general.

I've converged to a workflow where I maintain a library with a main project pipeline and reusable tools for the project, and do all scripting with jupyter (all notebooks version controlled).

I've found that machine learning projects can be pretty effectively parametrized with config dicts for data, training and the model. Each type of config gets it's own pipelined method that does all of the library calls - pipeline_batch_gen, pipeline_train, pipeline_build_model.

Example of a poorly organized config from a project:

model_config = { 'optimizer': optimizer, 'clip_grad': clip_grads, 'name': model_name, 'residual': residual, 'n_conv_filters': n_conv_filters, 'n_output_hus': n_output_hus, 'activation': activation, 'batch_norm': batch_norm, 'output_bn': output_bn, 'generation': generation, 'data_spec': { 'uniform_frac': uniform_frac, 'include_augment': True, 'batch_size': batch_size, 'bulk_chunk_size' : bulk_chunk_size, 'max_bulk_chunk_size': max_bulk_chunk_size, 'loss_weighter': loss_weight }, 'train_spec': { 'early_stopping_patience': early_stopping_patience, 'lr_plateau_patience': lr_plateau_patience, 'learning_rate': init_lr, 'clip_grads': clip_grads, 'partial_weight': partial_weight } }

I've wanted to give Sacred a try https://github.com/IDSIA/sacred - looks promising but haven't tried yet so can't comment.

I still tend to keep track of model performance by hand though. But I have always have the notebooks I can go back to for reference. This is something sacred could help a lot with.

Another very non-trivial aspect of this kind of work is the compute/storage infrastructure you need to scale beyond a single workstation.

We have a nice system here where $HOME lives on NFS and gets mounted when you log into any machine on the network - I can hardcode paths in my code and count on every worker having the same filesystem. I can't imagine how we would do distributed jobs without NFS. That's not a very realistic solution for homegamers though - you need a very fast network and expensive commodity hardware. And sys admins.

Does anyone have a solution for that half of the problem? I've seen a number of merkle-tree based data version control solutions recently...

kungito 1 day ago 1 reply      
Why is it so bad if you have many branches?
Ask HN: Does success in work bring you happiness?
115 points by Crazyontap  1 day ago   96 comments top 65
justboxing 1 day ago 1 reply      
> Can anyone here who feels truly happy tell me otherwise..

Not sure if this helps answer your question, but I felt truly, blissfully happy the first few months of my arrival at America (from India).

I'm not sure what it was, maybe the fact that I achieved the 1st step of a childhood goal / dream. Or maybe it was the new experiences, living in a foreign land, finding cleanliness, orderliness, and a very efficient system in everyday life that was largely lacking in India.

But I really had nothing. Just 2 suitcases and 500 $ in borrowed money. I learnt on the 1st day on my job (on H1B visa) that I was there only for 2 months to fill in for an American woman who was going on her maternity leave and that I would be sent back to India * after that. I also didn't know anyone here, was told by the company that brought me here that I need to vacate the hotel they put me up in within a week, had no credit history, nothing.

I think that fact that I had no obligations -- financial or otherwise -- was part of it. Didn't have a mortgage, loan on a car, was single, no dependents to take care of, and very little physical possesion.

Nearly 2 decades later, I'm still trying to get back to that state of happiness. Like others have stated here, I don't think money has much to do with achieving 'happiness'.

I think the pursuit of happiness is purely a western-culture phenomena...

[ * hustled and extended my stay beyond the 2 months by doing the work of another citizen co-worker who offered to get the manager to extend my contract beyond 2 months if I "fixed" her code... 18 years later... I'm still here :) ]

throwawayperfin 19 minutes ago 0 replies      
I don't know how popular this will be, but yes.

I've made $1M - $1.5M the last few years. As someone who grew up poor, that feels like a major accomplishment. Even if I can't talk about it with most people (only my mom & wife know), it's still a source of internal pride.

We have small children & I've fully funded their 529s. Knowing they won't have to worry about that, even if things go south for me, makes me feel like a good father/provider.

My mom is getting on her age. She doesn't have a lot saved, as it was hard being a single mom raising a large family alone, let alone saving for retirement. She used to tell me she'll just work until she dies & she was determined to never be a burden. The only reason I've shown her my W2s is not to brag, but to tell her, emphatically, she can (should!) retire and I will take care of her.

Oddly, the first years I made that much, I found it very stressful.

I kept thinking "I'm going to fuck this up & regret it for the rest of my life. Tomorrow they're going to realize I'm an idiot & fire me. I just know it." And not like a every so often thing, every month or two. Like every day or two. It's still there, but not as bad.

We've kept our lifestyle & expenses the same. We've been saving as aggressively as I can. Taxes suck, but on the upside, we're not that far from being financially independent. The only exception is at Christmas, I buy my wife something expensive jewelry wise. She's low maintenance, puts up with me, is a wonderful wife, and it's nice to spoil her.

Even knowing that's close is a change psychologically. Even if full independence isn't far off, even closer is theoretically being able to take a 9-5 job, or something much lower level. What's weird is knowing you could walk away from your job, changes the mental stress on you. In fact, knowing that, I think I'm much more likely to stay in my current job.

I think you could debate if it's money itself that is making me happy, or what it lets me do for others I love dearly, but for me it's basically the same thing. I couldn't do the latter without the former.

jboynyc 20 hours ago 1 reply      
I'm an academic. My frequent collaborator has a rule that I find very wise. Following this rule, we celebrate when we submit an article for peer review or send in a grant proposal, not (only) upon receiving positive news (article accepted for publication or proposal funded). That way, the happy occasions are based on our own goals and rhythm, not depending on outside confirmation. I'm sure you can generalize the underlying principle to other kinds of work as well.
numbsafari 1 day ago 0 replies      
The trick is to define "success" in such a way that it drives your happiness, rather than adopting external definitions of "success" that have no relationship with your own personal sense of self worth or life pleasure.

"Money" won't likely drive your happiness. Not entirely.

"Increasing shareholder value" also won't likely drive your happiness. But enjoying the camaraderie, or seeing your leadership improve peoples lives, or the sense of accomplishment that comes with setting and achieving goals... those things can lead to happiness. And a lot of times, you can achieve that kind of happiness even if you miss your quarterly numbers, or a startup hypothesis doesn't pan out.

"Reading all the books by Author X." "Getting a Ph.D." "Coaching a little league team." "Completing project Y." "Publishing paper Z." "Taking a 2 month RV trip across europe." "Earning the respect of my spouse or partner."

Money, shareholder value, "assets"... are only a means to certain kinds of ends.

AndrewKemendo 1 day ago 3 replies      
Does success in work bring you happiness?

Yes. More than anything else.

It's not the money part. I don't make much. It's the influence and seeing my work actually shift how people act and live their lives - especially seeing where it will lead.

I have three kids and when I talk with other parents, they say that they get the most joy out of seeing how they can positively influence their kids.

What about positively influencing millions of people, consistently over the long run with your work? You do that through impactful, meaningful work. Maybe it's software or maybe it's building houses, or providing access to capital for low income people, or working on vaccines, or any number of the millions of things that influence people at scale. That's the difference, at scale.

You can't do scale with personal relationships, you do it with work. Define work however you like (charity etc... it's how you spend your time)

How could that not be the key to happiness?

6nf 1 day ago 0 replies      
A study of people who got into devastating accidents leaving them paraplegic or quadroplegic found that after 6 months, those who were generally happy before the accident returned to being generally happy. Those who were unhappy before the accident got worse or stayed the same 6 months later.

On the other end, people winning the lottery also reverts to their pre-lotto happiness level after 6 months.

I guess the point is that you probably won't find happiness in work success if you're currently miserable.

There's some newer studies that helping other can make you happier, like this one published in Science:


The effect is not huge though. A meta study on this showed that it's only about 1 point on a 10 point happiness scale.

If you really are not happy, consider these common and proven recommendations:

- Get plenty of good exercise, at least 30 minutes, 3-4 times a week

- Get enough rest, 8-9 hours a night

- Check your vitamin D levels and supplement if needed.

- Eat healty and avoid alcohol and sugar

- Spend time building social support, do not neglect your circle of friends and family

- Get into a routine, for example go to bed at the same time every night and wake up at the same time every morning

And of course if you feel like this for more than 6 months, see a psychologist.

JTenerife 23 hours ago 1 reply      
Ambitions, e.g. for success at work or sport, are natural and come from the urge to have a high social ranking. After all we're first and foremost social beings. So our position among others is inherently important to us. But we're not living in clans any more. Civilisation has made things difficult. This kind of success (to assert ourselves over others) is overly glorified. Athletes are looked at god-like. Money and fame are overrated. To some extend it's natural to try to be successful, but the world is full of extremely successful people who find themselves being unhappy.

Those people often see that helping others is a true source of happiness.

Matthieu Ricard is a quite famous monk having published a lot of interesting stuff:


This one is on the topic:


roylez 22 hours ago 0 replies      
Success in work does not make one happy, or at least in the long run does not do so.

It has been discussed in great detail in book The Power of Now if I remember correctly, that there are two types of happiness, pleasure and joy.

Pleasure is short-term and results usually from external events. Winning a lottery, having a party, making your first million, and etc, these will bring great pleasure to you. However, pleasure fades away fast, and you will not feel any difference after some time, no matter a day, week, or a month. The life goes on, and you still have all other things to make you stressed and feel miserable. This is why people say money cannot make one happy.

Joy is, on the contrary a skill that can be learnt. It is an attitude to be content with your current state, and be just a little bit above that "neutral" mood, no matter in what adversity. With this skill, you would not worry about if you would succeed in your job, because it is irrelevant to your happiness.

Both The Power of Now and Stoicism stuff like A Guide to the Good Life: The Ancient Art of Stoic Joy can give you some hints on how to live a joyful life.

perlgeek 21 hours ago 2 replies      
All the small successes bring me happiness, both in work and outside it.

Before my current job, I spend about 2.5 years trying to get a PHD (in physics), and I quit. There were several reasons, but a major one was that I didn't feel I had any successes.

Since then I've been doing software development, and there are small successes and wins every day, or at least every week. A feature is finished, a bug is fixed, a colleague tells me that something I wrote saved them time or hassle, or even that they enjoyed in the new UX.

My wife told me I was a different person in the new role: much more relaxed and happy. I agree.

Now I have two children, and it's another source of a stream of small successes that I can enjoy. First steps, first words, first shoe laces tied, first cucumber cut by themselves etc. They are not my own, but I'm sufficiently emotionally attached to them to derive happiness from theirs.

jblow 23 hours ago 0 replies      
Yes, if it is creative success and not merely monetary success.

I am of a personality type that I don't think I could be happy without creative success (loosely defined as, having done a good job on creating things that would not exist if I hadn't made them). In a previous phase of life, I was not successful at making things, and I was pretty unhappy. Now I am successful at making things, and am much more happy (though I have also developed several mind-management skills as well).

If you are talking about "1m+" as the sole gauge of success, I don't think that means very much.

ACow_Adonis 1 day ago 0 replies      
Maybe not work specifically, but making and hitting medium-ly stressful goals and an overall sense of agency in one's psychological mindset will generally be correlated (causative) of general well-being.

Having a certain amount of money, social standing, and meeting goals will generally help enable this.

But so too can one feel trapped in particular professions, if you don't feel you're adding any value, or if you lose that sense of active goal setting/valuing/achieving cycle, then it doesn't matter what other people's impression of yourself or your job or success are...a tendency towards depression in such a state would not be peculiar...

d--b 22 hours ago 0 replies      
Thing is: happiness is elusive and relative.

Some people will feel miserable after achieving some professional success (either for having used much time pursuing what they now consider vanity, or for still finding they're not successful enough). And some people will seem happy regardless of anything that happens to them, professionally.

If you feel miserable because you're not a successful founder making tons of money now, we can't really tell you whether achieving that will make you happy or not. There are all kinds of stories.

I guess it'd be good to understand why you crave for professional success in the first place. Is it to please your family? Is it for self esteem? Is it to make money so that you can party a lot? Is it so you can make money to give to charity? Is it because you want to spend time with smart people who value your decision and make you feel good? Is it to be more seductive? Is it because you love working? Is it because you want to make your dent in the universe?

Professional success is only a mean to fill something else. For me, I couldn't care less about changing the world, or success for self esteem. But I am still fairly driven to make money. My goal is to be more free and still have some comfort. As in, i don't want to depend on anyone: have my own place, have enough money to not have to make decision because I lack of it. I could reduce my needs, but I also like my comfort, living in a nice city, etc. So right now, i'm playing the professional game, but only because I'm looking for a way out.

NamTaf 20 hours ago 0 replies      
Success in my work brings me happiness but not via money. It brings me contentedness and satisfaction which in turn makes me happy. After all, I have a desire to be competent at whatever I apply myself towards and master the responsibilites I'm assigned. The satisfaction from my success comes from the reputation amongst peers, demonstrated mastery of fields, knowledge that my responsibilities are in order and working well, etc. rather than from the amount I earn every fortnight.

Where money does factor in to it, though, is as a tool to reduce the barrier of entry to other things I enjoy outside of work. In that sense, I don't feel inadequate if I'm not earning a certain amount and my satisfaction in my job isn't tied to receiving a certain bonus or whatnot. However by doing a good job - motivated by my desire to be satisfied with my work - I get rewarded with more money which enables me to do things like travel the world, afford luxuries, etc.

NB: I'm not one of the $1m+ club, so maybe something changes there, but I don't feel it would given my situation.

tchaffee 1 day ago 0 replies      
Accomplishing things can bring temporary happiness. Money up to a certain point will make life easier, but after that it doesn't make much of a difference. One of the easiest ways to make yourself happy is for your work to be meaningful. If you feel like your work is helping other people that can lead to more lasting fulfillment.
heleph 20 hours ago 0 replies      
Success is fun and should be celebrated. It's definitely something that's nice to achieve from time to time.

What is problematic is when you look for something in success that success can't give you. If you don't like yourself, success won't make you like yourself. If you need more connection in your life, success won't necessarily give you that feeling of connection. If you're looking for proof that you have value, there is never enough success to prove it.

Success is great, but may lead you into doing things that are suboptimal for you, if you chase it. I think it's only really satisfying if you're chasing something more meaningful and then you are successful at that. The other advantage if you're doing something more meaningful, it's meaningful even if you're not successful.

throwaway131 22 hours ago 1 reply      
Me? No.

Everyday workplace successes like good reviews, raises and promotions don't make me happier. If they did, I would work hard and try to be successful.

I also don't get a kick out of winning, or satisfaction from completing a project, or a sense of comradery from pulling all-nighters with people. If I did, I would go seek it.

Instead I work 35 hour weeks and keep a moderate, negative vacation balance that I fix through pay cuts whenever possible. I go home to read good books, cuddle my girlfriend and go on long hikes with my dog.

It's worked, and I'm very happy.

siberianbear 22 hours ago 3 replies      
I made several million dollars in Silicon Valley and retired at age 40. Now I travel perpetually but I have a couple of "home bases". Every day, I'm thankful that I have my health and a full day to do whatever I want. Time is finite, and living off investment income gives me freedom from having to sell my time for money. I own 100% of my own time now.

I saw a sign once that said, "My hope is to die in a staff meeting: that way, the transition from life to death will be subtle." I understood the sentiment 100%.

Even by Silicon Valley terms, I had a great income and a good career. But I will never return to it.

keyle 21 hours ago 1 reply      
Don't chase "success". Chase happiness. If you chase success, you're chasing a moving goal post. You will never truly be happy until you get content. Your frustration may come from the fact that you have high expectations for yourself. Slow down and enjoy the little things, that morning coffee, that lunch with friends, etc. Chase every work opportunity and do work hard, but don't chase success to obtain a state of permanent happiness.

The fact is, money in a bank account, once you get enough to live, is just digits. Add a 0 at the end of it, that doesn't make you happy. And shopping therapy is a very short fix.

I find I'm much happier running projects with 0 expectations of deriving $ value. E.g. free games, free software, happy hacks. Once money is involved, expectations jump.

mikekchar 20 hours ago 0 replies      
Success is awesome. When I've been on successful teams, everyone is happy everyday. Even when people have things in their outside life that cause problems, at least they have 8 hours a day where they are successful. I was on one team that just couldn't lose. No matter what we did, it was fantastic. When you hear about "hyper productivity", it's a true thing. It happens. After that team broke up (after an unfortunate internal company reorg) I've spent the rest of my career trying to find it again. Came close a few times, but never nailed it like that.

Of course, that answers your question literally. I don't know if it's what you meant because my answer had nothing to do with money.

PangurBan 15 hours ago 0 replies      
Studies have shown that beyond a point money in and of itself doesn't boost happiness. In addition, the social aspects of work are highly beneficial - and the lack of social interaction leads to depression for many retirees. I know people who are very successful in their jobs and very well off who are absolutely miserable. I know others that don't earn a lot - they earn enough to be secure and live well - but derive tremendous happiness from their job.

In addition, the answer depends on your company, work environment, the impact of your work on others and the type of person you are. Does success at work mean elevating your team, helping customers solve their problems and improving the lives of others, or does it mean stabbing colleagues in the back, getting customers to buy products that either aren't helpful or even hurtful to them and making the lives of others worse by harming them or the environment? Are you the type of person that feels better improving the lives of others or enjoys the feeling of deriving benefit from tricking others?

ptr_void 1 day ago 2 replies      
I don't understand people's obsession with happiness. It always seemed like a very weird and arbitrary metric. Orgasms makes people happy, perhaps we, as species should come together and fund/help build the constant orgasm machine, we will all be very happy.
aizatto 16 hours ago 0 replies      
I think this is a really good question.

I've been asking myself similar questions, and made a site for it at https://www.deepthoughtapp.com

I've been using this as a way to understand myself better.

Success at work does bring me happiness. But happiness is fleeting as well. There are moments of frustration at work, which bring my mood down. I believe the feeling of progress drives a lot of happiness.

I'm trying:- to better to deal with the frustration- to accept accept frustration as the cost of happiness. I don't think there can be happiness without frustration.- to understand my rhythms of highs and lows better- look at small successes, daily successes, personal growth- find fulfillment. What makes me fulfilled.- Understand my motivators. The need for autonomy, mastery, and the purpose of it all.


manyxcxi 23 hours ago 0 replies      
Success absolutely brings me happiness, it's the culmination of a ton of hard work paying off.

The difference is, you can't let the failures and external factors bring you down. Money won't bring you happiness, it'll give you some stress relief to go make your own happiness, but if you're in a bad situation and making $20K, $120K, or $1.2M you're still going to be unhappy.

Take pride in your craft, in doing what you're doing to the best you can- but once things are out of your control, it's useless to let those things affect how you feel about yourself.

The only times work failures have gotten to me are when I thought that I didn't do a great job, or I could've gone over and above and that it might have had a more positive outcome.

More importantly, you're entire self worth and happiness can't be derived from one thing. If your personal identity is centered around your career, your significant other, or your sports team, etc., you're fucked. We're complex animals, you should be getting your self worth and happiness in bits and pieces from everything you do and all the important relationships in your life.

Have hobbies. Anything, try shit until something sticks. I woodwork, ride my bicycle, shoot archery, and fish. I have my own start up and am in the office by 630, have a family with 3 kids under 5, so I get creative to find the time. Ride my bike to work, teach my kids how to build stuff, shoot archery mid day at the range while I'm noodling over work stuff, and the fishing- well that involves a lot of pre-planning and buttering up the wife.

Here's the thing: I'm not really good at any of those hobbies. I mean, I'm above average at best, but I'm generally barely knowledgeable. I'm okay with it, it's a no stakes learning situation, unlike all day at work. It feels good to learn and not have it cost me thousands of dollars, or to eat dinner on a dining room table I built with my own two hands.

I would think it's important that you get satisfaction and happiness from your professional successes, but I think it's more important you're getting it elsewhere too.

RUG3Y 5 hours ago 0 replies      
Define success? Define happiness? I get a pretty nice dopamine hit when I solve a hard problem. Money doesn't make me happy but maybe that's because however much I get, it's never enough.
lhuser123 1 day ago 1 reply      
The book "So good they can't ignore you" has some very good insights. For example, the author talks about how it help some people obtain flexibility and control, which in turn makes them feel more happy or living more meaningful lives.
xapata 23 hours ago 0 replies      
I'm a pretty happy guy, but I work at it. I stop to appreciate the landscape. I try to enjoy each bite of food. I pay attention to the strain of my muscles while riding my bike. I sing a song for myself while I'm doing anything tedious. Also, whenever I'm upset I remind myself that whatever was bugging me isn't really going to stop me from having a good day tomorrow.

I worry about my health and my family/friends' health. Otherwise, I'm care free.

Work? No. Friends make you happy. Good colleagues, good customers, good neighbors.

tluyben2 15 hours ago 0 replies      
It does, but there is more to it. I think it is very personal unfortunately. I personally feel perfectly happy sitting in nature; I hear crickets around me and it could not be more perfect. But that alone would not do it for long; I need some challenge and for the last 30 years that means writing code for me. Writing code in nature is all I ever wanted. I can see that is different for others and that others would hate my life. So you have to find what it is for you. My hobby is my work and after all these years it keeps me going, more hours than most people would put in and it makes me happy. I am lucky to live in a country that won't let people starve, so even if I would not get paid for what I do, I would still do it.
notadoc 1 day ago 1 reply      
Feeling good about what you do will likely make you happier than "success", I know plenty of successful people who are miserable or still unhappy.

And unsurprisingly, not liking what you do will deprive you of happiness

rifung 1 day ago 0 replies      
I don't think that success at work makes me all that happy because what success means at work is defined by someone else.

Of course, other people might feel like it matters to them and if so then I don't think there's anything wrong with that. However, I think it's really important to see that there are many things beyond your control, so if you try your best and still fail, I like to think you should still find happiness in how you hopefully grew as an individual.

harryf 21 hours ago 0 replies      
Success in anything challenging gives you confidence in your ability to shape your own life. Success helps you avoid "victim thinking" and gives you a greater ability to take risks. That in turn is an _opportunity_ to be happy, although there are plenty of successful-but-miserable people out there. It doesn't have to be success at work though - could be success in a hobby.
sebringj 1 day ago 0 replies      
I never feel that good when I make someone else rich. I have yet to know how it feels to make myself rich but I'm sure its not that bad.
29052017 19 hours ago 1 reply      
My Personal experience tells me that Money alone doesn't bring you happiness.

Around two years ago, I was working at a middle tier SW outsourcing company, which payed me a respectable salary. Nothing great but it was quite enough for me.

Then I landed a job at a hot startup, which had already raised its first round. They offered me nearly double the salary that I was getting then. I didn't think twice and accepted the offer.

Two years have gone by and all the extra money that I have made in that time has not brought much change in me or my life. I have started spending more freely, but that doesn't make me much happier than I previously was. Maybe it's just me, but money doesn't seem to do it for me!

deepakputhraya 22 hours ago 0 replies      
I started working for my current company about a year back, and I was given ownership and the freedom to develop my work which I found very lacking in my previous company. I took this opportunity to learn a lot, I took ownership, and I started doing things that were not in the pipeline in my free time that would benefit the company. I was really happy with what I had built, and I was rewarded for my work. I was happy!

That was nearly six months ago. Now, working at the same company I am not very happy, probably because of burnout, lack of senior developers or decrease in the learning rate or possibly because of how confused I am right now.

Professional life can bring you happiness, but I am doubtful if it can do that for a very long time. It's always the personal life that determines how happy you are.

CM30 18 hours ago 0 replies      
Not necessarily. If you despise the field you're in and can't bring yourself to enjoy your work at all, even making millions won't make your work life a happy one.

Of course, I suspect a lot of truly successful people make up for that a fair bit by doing stuff they actually enjoy outside of work. But if your job generally isn't something you enjoy doing/your skills don't match your desires, then it can pretty miserable regardless.

There's a reason some people give up a great job for something that pays far less that they actually enjoy.

fsloth 20 hours ago 0 replies      
Generally I think million dollars won't make you happy. It will increase your mood for a while and then it will plateau. Past achievements don't bring lasting happiness. That's just how humans are built.

Therefore, happiness can be achieved only through things that you do daily. Hence, the million dollars can facilitate happiness if it allows you to do things which you like - like camping, base jumping, cooking - whatever you like. Or even your original job, if you were so lucky to have a job that brought fulfillment.

The key to happiness, is therefore knowing yourself and knowing what you like.

RealityNow 23 hours ago 1 reply      
What makes me happy is doing meaningful work.

My job as a software engineer is not particularly meaningful or fulfilling in the grand scheme of things. But it pays well, which will at some point allow me to retire and work on something meaningful to myself and society.

jmcgough 1 day ago 0 replies      
Feeling like you're a bad fit for your job or that you're underperforming can reeally contribute to stress and anxiety.

For me, I'm happy when I'm pushing myself to get deadlines done and to achieve goals that I set for myself... but also focusing on self care when I need to, and giving myself creative outlets outside of work (which for me is music and cooking).

So, success contributes to happiness, but it's important to try to strike a balance and not let that be the entirety of your life. There are some people who enjoy throwing themselves into their work, so for them it's a matter of working somewhere where they feel like their efforts are rewarded.

marinacalado 17 hours ago 0 replies      
I think if you're working on something that gives purpose to your life, the "success" (in whichever means) derived from work, can indeed increase your happiness. But if you're working on something you don't believe in, solely to pay your bills and "make a living", then probably the correlation will not be there...
ian0 22 hours ago 0 replies      
Success building products and organisations has brought me a lot of happiness. I genuinely enjoy doing it and have been relatively successful professionally as a result.

Unfortunately, a side effect of this has been more frequent engagement with groups of people who, inadvertently by virtue of their own success, have optimised "talking about building things" over actually doing so. This has reduced my happiness somewhat as I struggle to improve my communication, without succumbing to imitation.

itamarst 1 day ago 0 replies      
Increasing shareholder value does not make me happy or unhappy, for what it's worth.
mrmondo 18 hours ago 0 replies      
I've spent a /lot/ of time working through this and for me - Yes, 'Wins' at work directly correlate to my overall happiness both at work and home. I even graph my happiness at least 3 times a day and if its above or below average I try to tag it with something like #workproblems or #workwin
mrweasel 20 hours ago 0 replies      
It's certainly not my main source of happiness. I think I would be able to just as happy without having to work, if my needs where otherwise meet.

However, given that I do need to work to make a living, not being successful would make being happy much harder. I can't imagine happiness would come easy to people who experience failure after failure at in their job.

strls 18 hours ago 0 replies      
I think this depends entirely on how you define success.Having $1m in itself does nothing for happiness.

But the process of "getting there" certainly does. The drive, overcoming challenges, achieving small "success" every day.

Humans are not happy when everything is settled. We crave struggle.

WalterGR 1 day ago 3 replies      
Studies show that happiness increases proportional to salary up to USD$70,000.

Beyond that dollar amount, there's no increase in happiness.

Now, salary isn't necessarily predictive of "success," (as per your question...) so the above fact may not necessarily be relevant... but I present it for what it's worth.

EDIT: I haven't evaluated the study I cited (perhaps erroneously) as fact. But I'll leave this comment here for it to be evaluated.

atemerev 18 hours ago 0 replies      
Why it does make you miserable? Success is good, you can be successful, and you can be happy.

For me, I get most happiness in my life from: 1) discovering new things, and 2) successfully making new things, in that order. Why do you think there's anything wrong with that?

diyseguy 12 hours ago 0 replies      
It brings you respect. For some people that equates to happiness. For others happiness arises from large amounts of unstructured time.
hprotagonist 1 day ago 0 replies      
Happiness is an epiphenomena.

Success at work usually makes me feel temporarily satisfied, but rarely happy as such. Happiness sneaks in of its own accord.

peteretep 21 hours ago 0 replies      
I'm truly happy:

My quality of life improves constantly albeit quite slowly because that's something I work on. I found work that's challenging and rewarding without being stressful. I am working towards a long-term plan and it's going quite well.

madprops 22 hours ago 0 replies      
This is a quote that resonated with me:

"Success is being in charge of your lifestyle and creating something you're proud of, surrounded by people you love."


trevyn 15 hours ago 0 replies      
Happiness = Progress toward your goals. That's it.

The implication, of course, is that you must never stop having goals and making progress to remain happy.

Crazyontap 19 hours ago 0 replies      
Thank you everyone for your replies. The thing i learn most is that for most people success has nothing to do with money. It gives me a lot of new perspective about success.
fusiongyro 23 hours ago 0 replies      
I think it's better to search for joy than happiness. If you find joy frequently, you'll be happier. Find a way to get off the hedonic treadmill, and you'll be happier.
geofft 1 day ago 0 replies      
Success at work is no guarantee of happiness, but lack of success is a fairly reliable way to be unhappy. It's definitely true that pouring your life into a company owned by someone else is not a great way to feel happy, but also, you're there 8 hours a day (or more) 5 days a week (or more), poor performance endangers a lot of things low on Maslow's hierarchy of needs like affording food and shelter, and you're surrounded by humans who are unintentionally bombarding you with a value system.

I am generally pretty happy (in a long-term sense), and to be honest, I'm unemployed and job-hunting at the moment, hoping to sign an offer this week. I certainly make far less than $1M per year. I quit my old job because I was unhappy there and starting to be unhappy when I went home, too: I was working long hours and trying to be very good at what I did, and I didn't get the sense that people around me (and my management in particular) valued the things that I was trying to be good at. That is, to be clear, not a criticism of management: they needed different things out me than what I had gone into the job expecting them to need. But it took me a while to really get to terms with how much I had let my sense of self-worth become defined by the value system in place at my work, even though my engineering skills and mindset had remained largely as they were. That dissonance got to me very badly.

I think that's the risk with trying to be happy by being successful at work: it's always an external metric. You can be very successful for years, and laid off the next day, and you always know that in theory you can be laid off the next day.

The things that make me happy now are all internal metrics, that is, they're accomplishments that I myself see as accomplishments, instead of hoping my management will acknowledge. I'm happy about the friends I have, about how much I've been cooking instead of ordering food, about how I've been getting better at singing, about the job prospects I have, about this video game I've been playing, etc. Some of them also have external measures (my voice teacher also says I've been getting better, the video game is letting me advance to new areas, etc.), but I can tell for myself whether I'm doing well or not, and - importantly - I'm continuing these things because I find them enjoyable, not because my voice teacher or the video game says I'm doing well.

Regarding money: on the one hand, I have enough savings that I could just quit my job and start job hunting, and that definitely made me happier than job hunting while staying at my job. On the other hand, I'm expecting a significant increase in compensation regardless of what offer I sign, and I don't think that's made me noticeably happier; I already have enough money that I can do things like quit my job without a new one lined up. I do think that you can feel unhappy from a sense that you're underpaid, but that again ties into external metrics: you know you're doing a job worth some amount, but you're being told it's worth less. I don't think being overpaid (for the work you do) is really going to bring you happiness, unless you have some plan to save up money and quit - and some plan for what to do with that money once you do and why you believe you'll be happy doing it.

upbeta 1 day ago 0 replies      
If we take "success" as accomplishment, the question now falls to fulfillment. If it's self fulfilling, then, I believe you feel happiness within.
sidcool 23 hours ago 0 replies      
Indeed. Finishing some piece of work that will be used by others to make their lives easier really makes me feel good.
draw_down 5 hours ago 0 replies      
Yes, and the reverse is true. I am unhappy much of the time, as I have found conditions in the tech industry to be, shall we say, suboptimal.
mgarfias 22 hours ago 0 replies      
After 20 years of doing this: nope.

Seeing my kid win his first bmx race? Yeah, that totally did.

ChristopherM 22 hours ago 0 replies      
What I'm about to say goes completely against what society and the majority of those engaging in virtue signaling claim is the key to happiness.

I am quite happy at the moment, and it started back in 2004 when I wrote off my family and commanded them to never contact me again. It turns out removing negativity in your life, whatever the source, no matter how well intentioned you may be in helping someone, goes a long way to being blissfully happy. It is said that "you" are the average of the 5 people you spend the most time with. So consider if your relationships are a positive of negative influence on your life. Remove the negative influences, no one is immune from being removed despite what society tries to feed you about how important "family" is.

In 2008 I went to the CTO of the company I was working for at the time, told him that I was planning to quit even though I had just started 3 months ago and proceeded to explain how my manager could be doing their job better. I listed out how I would run things. A week later I had my manager's job and a $13k raise, several months after that another $20k raise. Needless to say, the student loan debt that plagued me since graduating in 1999 was paid off in 5 months. As were the rest of my debt. Never underestimate how not having any debt can lead to real happiness.

In 2011 I quit the last "real" job I've had at 36. I was not and am still not independently wealthy. I have no family to rescue me if I go broke. At the time I was planning to make an iPhone game, 6 months in coming up to speed on Objective-C, drawing graphics the job I quit needed help desperately I threw out a price of $7500 a week. To my surprise they went for it. So I put the game on hold and worked for 9 months. Accumulating $240k for the year. The money really did make me happy, because of how quickly it piled up. No scrimping and saving and gradually building wealth. Thinking of doing that makes me want to honestly eat a bullet. The old... yeah, save, work 40 years, 2 weeks vacation a year, plus having holidays when the rest of the country does too... die two years into retirement thing. No thanks... Anyways 9 months in and they try to hire me full time as the director of software engineering. 5 years earlier that would have been a dream job. But I really didn't want a "job" anymore. So I quit, took a 10 day vacation to Cozumel with my girlfriend and when I got back spent 2 years working on my game.

I was just about to release the game and then apple announced new ipad and iphone resolutions. So much rework, especially artwork. Then an old co-worker needed help, I told him I would if I could work from home. I was living on Lake Tahoe at the time and no way was I going back to the Bay. Especially since I was on the Nevada side and there was no way I was paying California a dime in income tax (Luckily it was a New York CO so they don't try to tax you out of state until you've made $1 million). The last year I was there I paid $18,600 to California for NOTHING. I got no benefit for that tax I paid to the state. Despite anyone who would argue with me to the contrary. As a note I currently live in Wyoming, and there is nothing more I want from the state, No income tax is glorious.

Anyway long story short, consulting gigs, where I work 100% from home drop in my lap every year or two. I make so much money on those that it pays for 2-3 years of not working.

The key to happiness is not working (for a client or a job, I like to work on projects of my own that have nothing to do with software). While simultaneously having money to do or buy whatever I want (within reason).

I never want to commute to a job ever again. After breaking up with my girlfriend of 5 years I have no interest in getting into another relationship. It's like "I've been there done that" and just don't have an interest anymore. When I'm working on my own projects I get so wrapped up in them I lose track of the time, I don't know what day of the week it is. I might talk to the neighbors or chat with an old friend once a week. I may not talk to or see another human being for a week and it doesn't bother me at all. It might be 10 days before I drive somewhere, it's amazing how long a car lasts when you barely use it.

As a side note, I have no interest in charity it does nothing for me, it's like the part that's supposed to fill me with joy is missing with regards to that. I don't want to contribute to society or do anything that makes the world a better place. And yet my happiness, contentedness, blissfullness has not lessened since quiting my last job in 2011.

So contrary to the frequently parroted "secret" to happiness that involves sacrifice, family, children, being part of a "team". I'm here to let you know, some of us have found happiness doing the opposite...

mythrwy 1 day ago 0 replies      
No. Also eating and sleeping don't make me happy. But lack of eating and sleeping make me decidedly unhappy.

This is the same type of thing. In other words, success doesn't make you happy, but it's hard to be happy without some level of success.

aaronblohowiak 1 day ago 0 replies      
It helps me feel ego-gratified, not happy.
known 23 hours ago 0 replies      
"Try not to become a man of success but rather to become a man of value" --Albert Einstein
j45 19 hours ago 0 replies      
Success or happiness doesn't come or stay easily.

Things don't get easier, you just get better. As you get better, you get challenged in new ways. How you call with challenges often had a big impact on happiness and enjoying success.

Ones work in life isn't always tied to one's life work.

Finding a balance between work, success, happiness and money evolved greatly in my 20's to my 30's.

You become more well rounded as a result of meeting people, new experiences and lessons learned.

Happiness for me includes not needing to look at what others are doing, and be happy for others at the same time. It's something I have to earn and keep earning.

Earning catches up when you get good at adding value and building the discipline to deliver day in and day out.

I have my interests and discovering I can persue them in most opportunities is invaluable, I can just focus on getting better at solving problems and adding value.

pasbesoin 1 day ago 0 replies      
Look at it this way: You spend an awful lot of your life working. If you have a choice, why spend that time doing something that doesn't make you happy?

Life is experience. Not numbers. And, as some of us know, it -- or our health -- can be taken away at any moment.

Living with some planning for the future means if and when you get there, hopefully you will enjoy it.

But don't forgo happiness now for some potential future. A successful life is enjoying now, the majority of the time.

(Nothing's perfect, and there will be down times. But too much down is a bad sign. And, it becomes self-reinforcing. Don't fall into that trap.)

All that said, having a decent income does help. If I'd moved around more in my career, I might have actually been happier and gained more financial security.

In short, take care of yourself, including your emotional self. That's probably the surest road to personal success, however you end up defining it. Positioning yourself to work from a position of strength, and with positive support.

SirLJ 1 day ago 0 replies      
I feel happy because I am very successful in my job, my investing, with my family and with my few friends - all those are very important, because life is not only work...
Ask HN: Is the CI space overcrowded?
6 points by Scorpiion  17 hours ago   14 comments top 5
debacle 3 hours ago 0 replies      
If you could make a self-hosted Jenkins replacement that is even half as good as Jenkins (think extensions) but written in not Java, I think it'd receive a lot of positive reception.

The trick with CI, like task/project management software, is that people don't look at what works. They don't try and compete on intrinsics like stablility, extensibility, etc, and really after 12 months on any platform, any mid-large size company is going to care more about those things than new shiny.

Jenkins had the absolute worst UI for a long time, and it still was many people's top choice for CI. You're generally writing a tool for programmers, after all.

lomnakkus 7 hours ago 1 reply      
I find that it's just like the bug tracker space: There's a lot of contenders, but somehow none of them actually hits the sweet spot.

For CI, it's either: "too GUI" or "not enough programmable".

Also, CI is an area that absolutely cries out for container technology, but the state of containers on Linux[1] is absolutely abysmal. Maybe it'll be better in ~5 years when we'll hopefully be about 40% towards the capabilities with Solaris Zones. (Here's a hint: If you cannot fully 'contain' root and users/mounts/devices, then you're not being serious.)

[1] The most popular platform for this, by a far margin.

twobyfour 14 hours ago 1 reply      
It's a well-populated space. If you're going to enter it, you need to be clear about differentiation.

We picked our CI solution because it was the only cloud offering we could find that supported Bitbucket and also allowed us to set up our own fully-custom environments to run against - without Docker.

Sadly, it took about a week's worth of research to figure that out. And I'm a bit concerned that in this crowded market they'll go out of business and leave us high and dry.

shubhamjain 13 hours ago 0 replies      
Nathan: Youve shown with Freckle that you can enter a saturated market like time tracking and still do well.

Amy: Saturation is a load of bullshit :)

Nathan: Really it just shows the market exists.

Amy: Its more than that. So much more than that. If a million people use Harvest, theres no way theyre all served well by the same tool. The presence of other products doesnt just show opportunity, it CREATES opportunity. Because wherever theres a big biz, there will be lots of dissatisfied customers.

Source: https://stackingthebricks.com/difficulties-for-nathan-barrys...

twunde 16 hours ago 1 reply      
I think that as evidenced by the discussion about concourse ci today https://news.ycombinator.com/item?id=14785254 that there is still room for improvement and new products, especially on-prem CI tools like Jenkins/TeamCity/Bamboo/Concourse.
Ask HN: How to DIY build a NAS system with old PCs and open source software
2 points by devy  8 hours ago   1 comment top
thexa4 2 hours ago 0 replies      
I use proxmox (https://www.proxmox.com/en/), it has support for ZFS out of the box and allows you to run services in containers.
Ask HN: What are the worst cases of online advertising you have seen?
2 points by kisamoto  9 hours ago   2 comments top 2
LarryMade2 5 hours ago 0 replies      
Worst case - Those would be the ones on I had encountered free(ish) sites like Sourceforge and OpenClipArt.org (though OCA I think has been fighting them)

Those are the ads that try to fool you into thinking their ad as if it is part of the sites UI "Click here to download app!" Download viewer to open file. They put a big black spot on the unsuspecting site that gets those ads.

Secondary would be the unscrupulous JavaScript ads that some sites get by signing up to an ad network - such ads that bring up malicious (or seemingly malicious) popups pop-unders, etc. Also putting a bad rep on probably a not as attentive but honest blog.

Toast_ 4 hours ago 0 replies      
Though not relevant regarding resource consumption, this[0] German KFC ad is humorously awful. Another example would be the 'download button' roulette one comes across on various file sharing sites.


Ask HN: What Alternatives to AWS Lambda Exist for Serverless Web Apps?
7 points by twobyfour  13 hours ago   7 comments top 5
KukicAdnan 5 hours ago 0 replies      
https://webtask.io is another alternative. A lot easier to deploy and manage, but only runs Node.js/JS.

/disclaimer: Work at Auth0, Webtask is one of our products.

cfjedimaster 13 hours ago 0 replies      
OpenWhisk - an open source project (http://openwhisk.apache.org/) supported by IBM, Red Hat, and others. I've got quite a few blog posts on it if you want to see some examples (https://www.raymondcamden.com).

Disclaimer - I work for IBM.

randomf1fan 13 hours ago 0 replies      
Microsoft Azure has "Functions" which is their name for serverless


QuinnyPig 9 hours ago 1 reply      
iron.io had a thing a while back; I've not checked in on them lately.

There's always "build a container farm and do it yourself," but that doesn't make sense until you've scaled significantly.

Ask HN: Good stack for a billing and invoicing application?
40 points by tmbsundar  18 hours ago   28 comments top 19
uiri 17 hours ago 0 replies      
I would say, eschew any fancy front end framework. Build an HTML form. They're tab-able by default. You can even tab to a button and hit enter to press it from the keyboard.

Separate out the UI and business logic, and you can probably port most of it to a backend MVC (where view means a template, meaning HTML) framework in VisualBasic. Once it is cleaned up, you can do a feature-by-feature rewrite in your backend language of choice (I'd likely recommend Django if you can go Python, but SparkJava might be more prudent for the kind of big freaking Enterprise that chooses to do stuff in VB).

Edit: after seeing https://news.ycombinator.com/item?id=14787139 I agree that you'll probably need handsontable or something like it. Simplicity is your friend; overengineering is unfortunately a common tendency among developers of all stripes, although the web kind especially.

wheelerwj 16 hours ago 1 reply      
Have to ask, why are you building this in house? Most accounting packages (quicken/quickbooks/sage) have this built in already and your accounting/bookkeeping people would already be familiar with it.

Or, if you're a smaller shop, maybe something like stripe? Or even a Google Doc/Excel. They have a bunch of easy to use templates these days.

If you really have/want to build it, this architecture is simple enough that i don't think its really stack dependent. MEAN would handle front end and a diverse invoice structure; Django/Postgress have some great admin-form features and handle multi-table queries gracefully; and .NET with windows forms would make short work of a desktop UI. Just go with what you know and focus on speed.

meredydd 18 hours ago 1 reply      
So, the first question to ask is: "Do I need the full-fat web development stack?"

If this is a hobby project, and the goal is to learn all five languages and 3-4 frameworks needed to create a traditional JS+API+DB web app, then go to town! Everything you want to do (eg keyboard-driven layout) is possible on the modern Web; you'll just need to read a lot of documentation. (And you will have quite a valuable skill-set at the end of it).

But if you just want to get something done (and especially if you're used to the ease of VB), be warned that the web is a exhausting many-tentacled pile of technologies. You might want to look at a simpler approach. I'm biased - I'm cofounder of a tool that aims to bring the VB experience to web apps (visual UI design, everything in one language [Python] etc - check it out at https://anvil.works). If you don't want to tangle with the web, something like Anvil, or building a native desktop application, are still possible routes.

cyberferret 17 hours ago 1 reply      
I wouldn't dismiss most js frameworks because the buttons seem to be mouse driven. With simple jQuery, or even plain javascript, you can 'attach' hotkeys to those buttons.

For example, our HR app (which is built on Bootstrap + jQuery) has a button for 'Add Employee' on the main employee list, but we have also linked the '+' hotkey to that button so the user does not have to revert to the mouse to add the next employee when doing batch entry.

Within that, there are plenty of grid style entry plugins (mentioned elsewhere in this thread) that you can add on to do things like the invoice screen etc.

But be aware - study the depth of some of these plugins. Invoice entry screens are fraught with all sorts of things like real time validation (e.g. will you allow a user to specify a quantity of an item greater than what is in stock? Can you calculate tax amounts on the fly line by line? Can the user change the pricing of the item on the fly and are there rules that have to be adhered to in order to prevent fraud) etc.

Yes, I've developed invoicing type apps many times before. It certainly has some 'gotchas' that can trip you up, and the UI is certainly a lot more complex that it first appears as you have to adhere to strict accounting principles in the back end.

johncomposed 6 hours ago 0 replies      
Fwiw, I built a very-very similar application recently using Angular (1.5) and it wasn't a great experience.

I originally used Angular because of all the enterprise components available (like JSON-Schema form elements and custom tables) but pretty much all of them ended up having some behavior that wasn't quite what we needed. Which resulted in tons of wasted time writing code around them, then forking and modifying them, then eventually just scrapping them and rewriting the parts of the app that used them. So I'd personally recommend not going with existing large table/form components. I also found myself working around some of the "Angular way" of doing things as the number of inputs and calculated outputs got larger, with most of the time savers up front (two way binding, etc) requiring major refactoring to get decent performance.

If I was doing it again I'd probably use react/redux/redux-thunk, just for more control over how the application's structured and how I'm connecting the inputs to the business logic.

Like, I recently found https://nadbm.github.io/react-datasheet/ and was pleasantly surprised how small and reasonable the codebase looked. Though I'd still just use it as a start/inspiration for your own custom table components instead of actually pulling it in as a dependency. And they give an example where they're constantly reloading the whole state of the table on change (I think intentionally just to keep the demo simple), but there's definitely better ways to deal with mass input. Just my 2 cents, good luck!

Edit: I originally recommended checking out redux-inputs for mass input, but it has an open issue* that was exactly the kind of thing I ran into with the form/table libraries that started the vicious cycle - I guess the moral is at least when you write your own way of doing this kind of thing you get to choose your battles.

* https://github.com/zillow/redux-inputs/issues/14

kowdermeister 16 hours ago 0 replies      
> None of the web style solutions seem to be suitable for a keyboard based (tabbing style) grid to represent an itemized billing.

I suggest you to build your own keyboard listener extension, frontend frameworks are don't really have built in support for this since it's too specific. You can very easily listen to all keyboard events with vanilla JS and trigger actions accordingly.

Take a look at Angular 4, it has all the event handlers you need in the templates/view modules. https://coursetro.com/posts/code/59/Angular-4-Event-Binding

Angular is more like a full feature framework with some enterprise feel to it.

If you want a modular system with craftmanship level attention to detail (you can build your stack how you like it), then try React or Vue.js.

notoverthere 17 hours ago 0 replies      
If you're interested in building it as a web app but want a keyboard-accessible grid / spreadsheet-like interface, then you have a few options.

The first resource I'd recommend is JSpreadsheets, which is a list of open-source JavaScript spreadsheet & data grid libraries. https://jspreadsheets.com

One of the most fully-featured JS libraries is Handsontable. It looks very flexible. They have some demos on their website to play with: https://handsontable.com/examples.html?headers

(Bonus: If you're using react, there's already a react component for using Handsontable: https://github.com/handsontable/react-handsontable )

jasim 17 hours ago 0 replies      
Check out ERPNext (http://erpnext.com/). It is a modern open-source ERP solution built in Python, has commercial support and an active community.

There is also Eto (https://github.com/picoe/Eto), a cross-platform C# GUI toolkit on which the excellent Manager accounting software (http://www.manager.io/) is built.

martijn_himself 17 hours ago 2 replies      
Would you consider migration to a (C#) .NET based solution with either a web-based or WPF / UWP front-end? I can't imagine keyboard shortcuts being an issue with either one of these choices.
pc86 14 hours ago 1 reply      
If it's already in Visual Basic the default for "modern stack" would be a C# API back end and whatever JS front end you want. This would also be crazy easy to host online if that's what you wanted to do.

This has to benefit of being able to use the exact same database and update the schema over time with your API, completely independent of the front end.

You don't specify whether your app is currently desktop or web based. Hitting the enter key has been the standard way to submit HTML forms since the very early days of the internet. Why would you need a special library to support that?

Since you're asking about C/Qt I'm assuming the current app is desktop based? Having just completed a client project migrating a large desktop-based application to the web (C# API, Angular front-end), work flows are going to have to change to at least some degree. It is very rare to be able to cleanly, easily port 100% of the desktop experience to the web. If that's a deal breaker, make sure it's not worth it to stick with the desktop. You can still separate your concerns and provide a modern experience.

holydude 15 hours ago 0 replies      
I would stay away from JS fancy stuff. Stick to the proven Java/C#/RoR stack.
tim333 15 hours ago 0 replies      
Sounds like you can use all sorts of different tech but web2py might be easy - the default forms are tabable, it's quite quick, easy, relatively secure and doesn't need updating all the time. Against it's not so modern and makes it hard to do stuff like chat messaging.
rwieruch 17 hours ago 0 replies      
If you like to try React, checkout the open source book The Road to learn React [0]. Not sure what kind of payment gateway you are using, but after your first application is up and running, you could add Stripe to it [1][2].

- [0] https://www.robinwieruch.de/the-road-to-learn-react/

- [1] https://www.robinwieruch.de/react-express-stripe-payment/

- [2] https://stripe.com/

ojhughes 15 hours ago 0 replies      
Personally, I would choose Spring Boot + Angular 4 for a project like this. Lots of functionality automatically configured "out of the box" (DB access, security, JSON object mapping) and a rich set of UI components available with Angular such as Prime-NG (https://www.primefaces.org/primeng/#/)
lostboys67 17 hours ago 0 replies      
As I spent years working on billing for a world leading telcoms company I have to ask

What do you mean by "billing application" your q implies you want to input transactions into some accounting (presumably double entry) system?

Does not your Accounts receivable have a web frontend or an API? do you really need to build your own accounts receivable / invoicing system

8ig8 15 hours ago 0 replies      
Instead of writing your own invoicing application, what about writing a custom front end to an existing web-based app (using existing API)?

That way you can focus on the specific UI you need and not mess with recreating everything else. Your UI doesn't need to be browser-based.

Tade0 16 hours ago 0 replies      
I don't have a specific solution for you, but you can narrow down your search by taking into account whether something(be it a framework or component of a framework) is focused on accessibility.
maxxxxx 16 hours ago 0 replies      
Maybe libraries like Developer Express would work for you. They have pretty sophisticated grids and other UI controls that are close to a desktop look and feel.
paraplegic 15 hours ago 0 replies      
Ask HN: Would you want to sell code of complete websites?
67 points by CAFEEFAC  2 days ago   38 comments top 21
everdev 2 days ago 1 reply      
People do this on https://flippa.com

But most of the sites are junky WordPress sites. And people pay a couple hundred dollars depending on the setup and the niche.

If you can build a flexible back end, then you could find entrepreneurs willing to pay thousands or tens of thousands to have it customized.

So, would you rather sell 100 $200 "as is" sites, or 1 $20k custom site?

5_minutes 2 days ago 2 replies      
Before the SaaS hype, this was just called "Scripts".


Check out the PHP folder section. It certainly has advantages using: bought scripts, instead of everything being a subscription. It has a onetime fee, and often can be modified yourself to anything you want.

callmeed 2 days ago 1 reply      
binpress does this already: http://www.binpress.com/. I've purchased iOS components from there in the past. Not sure how active/popular it is currently. As others have said, there's also flippa, hotscripts, etc.

I like the idea and I'd look into selling some code (I have a collection of Sinatra apps I re-use for all sorts of things from APIs to payments). The issue really comes down to support, customization, and deployment. I don't mind writing some documentation once, but I don't want to spend 4 hours supporting something I sold for $299.

Ignore the people that say there's no market. One way I think you make this stand out is with a "verified" badge of sorts. For any project, ensure that it has one or more of the following:

- Dockerfile that works

- Deploys to Heroku with min. effort

- Has a test suite that passes

- Has a working demo

- Includes a minimum amount of documentation/setup videos

That's my 2

primaryobjects 2 days ago 2 replies      
Buyers are typically more interested in buying a niche customer base/traffic, then they are about buying a web site code base.

In fact, many buyers don't even consider the programming language or platform the site is hosted on as being important, so long as they can get it up and running - and it has good PR and traffic analytics.

Hence, why fippa works (at least for selling a site for a few hundred; if you're lucky).

krapp 2 days ago 0 replies      
So instead of selling templates or whatever, I'm selling, like, a Dockerfile or Vagrantfile, seeded DB, backend and frontend, the whole thing? Sure - if the price is right, sign me up.

I have no problem with the concept necessarily, but I feel like it's kind of a solution looking for a problem that's already been solved, either by freelancing or, as mentioned elsewhere here, Wordpress/Wix/etc. The budget for freelance work along the lines of "Youtube/Twitter/Amazon clone" tends to be incredibly low, certainly lower than most Western developers can afford to live on, so my main concern would be, whether or not it the market would be worth the time.

mtmail 2 days ago 2 replies      
I started my website project with such a template: a Ruby on Rails project (open source on github) that already included user registration, email list management and selling products (ebooks). Over time I've replaced almost all parts but it was a huge timesaver in the first couple of months. I could see that work for Rails, Django, Express.js and similar frameworks.
daxfohl 2 days ago 0 replies      
Seems like it'd be hard to market. Designs you can look at and immediately differentiate. Back ends, eh, how could you tell? Unless you're going all-in like Magento, with customer support and everything under the sun, what would you have to differentiate your solution?

Between that on one end and todomvc.com on the other, I don't see any middle ground that would interest anyone.

I think the better thing is like Heroku, with a platform and pluggable services, and you write your own code into it.

throwaway2016a 2 days ago 0 replies      
These are called "Turn Key Websites" and they were quite common in the late 90s early 2000s.

Most common were dating and real estate websites.

Edit: infact, doing a Google search not much has changes. Tons of scammy sites you can buy for only $300 each.

brad0 2 days ago 0 replies      
There are websites out there dedicated to flipping web sites.

Most sites are people's side projects that bring in a bit of revenue. They've lost interest or have different priorities.

They sell it to others for anywhere from $2000 to $100k+.

hedora 1 day ago 0 replies      
I wonder if you could make a go at private cloud installs. Contrast synology and a roll your own NFS server. The former has perf analytics history, auto update, auto scrubbing, well supported apps, bullet proof certified hardware (as much as you'll find in the < $1000 range).

There is not a great solution for well-curated (read: backed up, encrypted and updated in a standard way, and works on the first try) dockerfiles. I'm to the point where I'd pay ~$10-100 per service for that at home, and I run about 5 services. Presumably the SMB market will pay more than me.

AznHisoka 2 days ago 2 replies      
No. Sell me data and then you're talking. (ie geolocation data, lists of most popular hash tags, lists of sites that use MixPanel, etc) Most code is worthless. Its the data thats worth money.
SonOfLilit 2 days ago 1 reply      
I don't feel there's a market - for very generic things you have Wordpress plugins or Wix, for anything less generic you simply can't create it without a very specific use case in mind. There is no "generic social media website" more specific than that Wordpress plugin that makes it look and feel like Facebook.
dkarapetyan 2 days ago 0 replies      
Doesn't this already exist as WordPress themes?
rlafranchi 2 days ago 0 replies      
I sold a wordpress theme site on flippa for $400 a few years ago. It included the site, themes, and demo sites. I was surprised I even got that much. Given the time spent, It wasn't a very good investment.
sebringj 2 days ago 1 reply      
there is sandstorm and codecanyon already
SirLJ 2 days ago 0 replies      
People would be interested in buying the business if it is profitable (and not solely based on ad words gimmicks that would disappear with the next google update)
bevan 2 days ago 1 reply      
There could be a market amongst those learning the given tech stack. I would have definitely considered buying well-built apps to study back in the day.
ronilan 2 days ago 0 replies      
sell code - you betcha!

list for (potential) sale - no thanka...

Giorgi 2 days ago 0 replies      
Same company that runs themeforest sells scripts on codecanyon. Yes, full frontend and backend was called scripts back in the days.
olalonde 2 days ago 0 replies      
There's no doubt the answer to your question is yes. The more interesting question would be whether there'd be any buyers.
nerdponx 2 days ago 0 replies      
Isn't there already a cottage industry for Squarespace themes?
Ask HN: Share your top 10 cli commands
5 points by aleyan  13 hours ago   16 comments top 14
Mizza 2 hours ago 0 replies      
For OSX, the command is:

$ history | awk '{CMD[$5]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl | head -n10

 1104 20.8% ls 272 14.4% cd 349 9.8% pip 425 5% a 521 4.2% j 619 3.8% z 719 3.8% vim 819 3.8% git 919 3.8% cat 1012 2.4% sba 1112 2.4% gs 138 1.6% ga 147 1.4% p 155 1% sof
`a` is an alias for ag, `j` is an alias for `autojump`, `sba` is an alias for `source env/bin/activate`. `gs` is git status, `ga` is git add, `p` is python, `sof` is soundscrape -of, `z` is zappa.

leipert 9 hours ago 0 replies      
Had to adjust on my zsh shell:

 cat ~/.zhistory | cut -d";" -f2 | awk '{CMD[$1]++;count++;}END { for (a in CMD)print CMD[a] " " CMD[a]/count*100 "% " a;}' | grep -v "./" | column -c3 -s " " -t | sort -nr | nl | head -n10 11681 15.2472% git 2964 8.74376% yarn 3921 8.35374% cat 4755 6.84807% docker 5628 5.69615% brew 6515 4.6712% cd 7372 3.37415% curl 8366 3.31973% npm 9298 2.70295% trash 10270 2.44898% find 
EDIT: trash is is like rm, but moves to system trash. From the reast you see that I mainly work in the JS ecosystem. If I add the second parameter, things get more interesting, and docker pops up:

 1645 5.84928% git checkout 2324 2.93824% yarn add 3221 2.00417% brew cask 4176 1.59608% 5161 1.46005% find . 6157 1.42378% yarn upgrade 7136 1.23334% docker run 8125 1.13358% curl -s 9124 1.12451% docker image 10121 1.09731% yarn remove 
EDIT2: The analysis may be more interesting if you check for piped commands as well, as I missed grep in the first list

 $ cat ~/.zhistory | grep grep | wc -l 1098 $ cat ~/.zhistory | grep sort | wc -l 316

ponyous 7 hours ago 0 replies      

 12258 22.5823% git 2594 5.94059% npm 3539 5.39054% cd 4366 3.66037% ls 5360 3.60036% vim 6344 3.44034% cat 7316 3.16032% rm 8287 2.87029% mix 9255 2.55026% nr 10216 2.16022% X_IP=* 11213 2.13021% gst
* (Omitted) It's not a command but environment variable followed by a command. I could probably alias it, but it is pretty unique and so easy to find with ^R in zsh.

Edit:If anyone would like to have more granular view I wrote this oneliner sometime ago:

 history | cut -c8- | cut -d' ' -f1-2 | sort | uniq -c | sort -n
It gives result like:

 # ... All other entries from history 180 vim 207 npm install 212 gst 220 git pull 361 git commit 537 git checkout

rajathagasthya 10 hours ago 0 replies      

 11668 26.8426% git 2723 11.635% gst 3361 5.80946% vim 4355 5.71291% gd 5311 5.00483% clear 6280 4.50595% ls 7276 4.44158% gco 8222 3.57258% cd 9152 2.44609% ga 10147 2.36563% pip
gst, gd, gco and ga are aliases for git status, diff, checkout and add respectively.

tmnvix 7 hours ago 1 reply      

 197 19.4% python 288 17.6% git 335 7% zappa 434 6.8% npm 528 5.6% ls 628 5.6% dig 728 5.6% cd 826 5.2% pip 918 3.6% cat 1015 3% fab

bob4uk 13 hours ago 0 replies      

 11123 11.2311% mpv 2631 6.31063% sudo 3386 3.86039% cd 4265 2.65027% echo 5260 2.60026% cat 6215 2.15022% cowerd 7210 2.10021% pacs 8173 1.73017% tweet 9132 1.32013% cowers 10128 1.28013% pacman
some handy shell functions https://paste.xinu.at/ocnBw/

johncoltrane 13 hours ago 0 replies      
My list:

 1565 14,3437% vim 2513 13,0236% cd 3468 11,8812% git 4280 7,1084% yarn 5147 3,73191% npm 6104 2,64026% gulp 795 2,41178% up 887 2,20868% rm 982 2,08175% docker 1079 2,00559% la
'up' is an alias for 'cd ..' and 'la' is an alias for 'ls -la'.

AlexAMEEE 11 hours ago 0 replies      

 1796 18.3664% ls 2718 16.5667% cd 3373 8.60637% gradle 4342 7.89109% git 5231 5.32995% vim 6182 4.19935% cat 7130 2.99954% gulp 8124 2.8611% . 999 2.28426% psql 1094 2.1689% curl
"." == alias to "cd .."

spcelzrd 10 hours ago 0 replies      

 1206 41.2% git 257 11.4% ls 343 8.6% vim 440 8% cd 531 6.2% open 627 5.4% exit 713 2.6% grep 812 2.4% man 910 2% gforth 106 1.2% info

johntdaly 13 hours ago 0 replies      

 11751 17.5118% cd 21542 15.4215% git 31273 12.7313% ls 4501 5.0105% touch 5330 3.30033% ssh 6321 3.21032% mkdir 7244 2.44024% vagrant 8234 2.34023% cat 9187 1.87019% subl 10177 1.77018% openstack

ezekg 11 hours ago 1 reply      

 1194 38.8% git 288 17.6% curl 362 12.4% clear 445 9% npm 517 3.4% cd 610 2% rails 710 2% nvm 810 2% atom 98 1.6% ember 107 1.4% vi

richerlariviere 12 hours ago 0 replies      

 155 11% cd 253 10,6% swift 349 9,8% ssh 445 9% ls 530 6% git 623 4,6% cf 719 3,8% vapor 819 3,8% say 917 3,4% sudo 1017 3,4% ngrok

AquiGorka 13 hours ago 0 replies      
1 240 19.4647% git

2 138 11.1922% vim

3 121 9.81346% cd

4 94 7.62368% ls

5 50 4.05515% sF

6 43 3.48743% exit

7 40 3.24412% npm

8 35 2.83861% tmux

9 33 2.6764% node

10 32 2.5953% ..

sF is a function to search that formats output similar to sublime's text search

seanwasere 13 hours ago 0 replies      

 1 21 43.75% sudo 2 8 16.6667% cd 3 5 10.4167% iptables 4 3 6.25% ufw 5 2 4.16667% zabbix_agentd 6 2 4.16667% ls 7 1 2.08333% top 8 1 2.08333% tcpdump 9 1 2.08333% mc 10 1 2.08333% ifconfig

Ask HN: Any bootcamps or courses for intermediate/advanced people?
150 points by sotojuan  3 days ago   93 comments top 34
ozanonay 3 days ago 5 replies      
Hi! I'm one of the instructors at Bradfield: https://bradfieldcs.com . We teach computer science to strong programmers, typically those who were self taught, attended bootcamps or weren't quite satisfied with their conventional CS experience.

We teach in small classes, strictly in person in SF. I know this sucks for folk (like OP) who are outside SF, but honestly you can't teach this stuff to a high enough standard remotely. We do get plenty of interstate and international students who visit for a course or two.

We also maintain a self-teaching guide https://teachyourselfcs.com for those who don't need the full classroom experience.

Happy to answer any questions in person: oz@bradfieldcs.com

modalduality 3 days ago 4 replies      
Recurse Center: https://www.recurse.com/. Anecdotally, not so easy to get in.
soham 3 days ago 5 replies      
[Disclaimer: Shameless self-promotion]

We run something called Interview Kickstart: http://Interviewkickstart.com .

It's a part-time bootcamp focused on preparing for technical interviews at (so-called) top-tier places i.e. places which interview heavily in DS/Algos and Large Scale Design for their core engineering roles, and also make staggeringly high offers. Think G/F/A/Netflix/Amazon/MS etc.

It is intense and also taught by Sr. Engineers working in core systems at these places. There is a rigorous academic take to it, with homework, tests, mock interviews etc.

A little known fact, is that many people come to the program with no intent to look for a job. They are already at good places, paid well, and just want to get better as an engineer, which I think is what you're looking for.

Many have figured out, that the structure and the forcing function challenges them to be better. Most of your peers will have backgrounds in CS/CS, and you'll also see people coming FROM some of the same companies others are aspiring to go to (e.g. Amazon, Microsoft etC).

We start an online cohort every month, where people join from all over US and Canada (and sometimes even other countries).

Feel free to check it out.

crispyambulance 3 days ago 2 replies      
Advanced folks will have very specific needs that are hard to meet for any course with a pre-determined curriculum.

Perhaps a better approach would be to hire an expert from a consultancy, negotiate a detailed custom curriculum together and go from there? It would certainly be expensive but perhaps within reach for a small group or for heavily motivated individuals?

zumu 3 days ago 0 replies      
How about moocs? Am algorithms class will level you up for sure.

https://www.coursera.org/specializations/algorithms comes to mind.

austenallred 3 days ago 1 reply      
Lambda Academy of Computer Science - a six month, full-time deep dive into software engineering and computer science. Closer to a CS degree than a one-month bootcamp. You need to know basic programming before enrolling.

It's free up-front and takes a percentage of income after you get a job, or you can pay up-front.


(I'm a co-founder, happy to answer any questions)

otterpro 3 days ago 1 reply      
Big Nerd's Ranch (https://www.bignerdranch.com/) especialy for mobile app development. Their bootcamp is called "retreat", and they also work as developers and publish books.
zengr 3 days ago 2 replies      
I have done CodePath twice and highly recommend for iOS and android bootcamps. https://codepath.com/
gaius 3 days ago 0 replies      
At this level you should probably just take a Masters. I did mine part time over 2 years while working full time. Many if not most good colleges will offer some sort of programme.
baron816 3 days ago 0 replies      
I highly recommend Frontend Masters: https://frontendmasters.com/courses/.

Lots of different courses taught by the likes of Douglas Crockford, Kyle Simpson, Ryan Chenkie, and Kent C Dodds. It's not just front end stuff--they cover data structures and algorithms, building REST apis, Electron and React Native, testing and debugging, functional programming, prototyping, and even SEO.

jbot29 3 days ago 0 replies      
I have been working on this idea for a little bit. Started putting together a list of intermediate projects for people that finished a bootcamp. It is still in its infancy. I ran a programming bootcamp for a year and a half and think there is a need for this, but still figuring out the right way.


spudsfurious 3 days ago 1 reply      
Profuse apologies in that this is not a so-called boot camp type avenue, but if you're really interested in some computer science concepts, UMass Dartmouth offers a computer science certificate.


eorge_g 3 days ago 1 reply      
This is heavy ruby/rails focused but has other content as well. Tagline is "Get the junior out of your title"


sixhobbits 3 days ago 1 reply      
I'm working with Hyperion Development[0] which has a wide variety of online bootcamps with 1:1 mentor support. We have courses targeting beginner, intermediate, and advanced. Currently we are just about to deploy a big update but have a look and you might find what you are looking for.

[0] https://hyperiondev.com

mcx 3 days ago 3 replies      
If you're in SF: https://bradfieldcs.com/
valbaca 3 days ago 1 reply      
Udacity Nanodegrees are geared toward "post-beginners looking to specialize" (my words, not theirs).


For example, the Android nanodegree assumes you're already familiar with Java and OOP, but not with Android.

The "Full Stack Web Developer Nanodegree" suggests you have "Beginner-level experience in Python." (direct quote) https://www.udacity.com/course/full-stack-web-developer-nano...

These courses are not cheap, they take a lot of time, but if you have the time and money, they are absolutely worth it IMO.

vikp 3 days ago 0 replies      
I'm the founder of Dataquest (https://www.dataquest.io) -- we teach data science online from the basics, and have a comprehensive curriculum that includes machine learning, spark, and data visualization. You can skip the Python basics and start with more intermediate/advanced material (and build your own projects!).

We also have a data engineering path that teaches more CS fundamentals, and may be a good fit (this is still being developed, but has a few courses).

yamalight 3 days ago 0 replies      
Shameless self-promotion:

If you are interested in front-end and/or node.js courses (javascript, react, webpack, all that kind of stuff) - I've been doing a free open source course called "Building products with javascript" [1] that is aimed at intermediate/advanced developers who want to learn javascript more in-depth.

[1] https://github.com/yamalight/building-products-with-js

luckycharms810 3 days ago 0 replies      
Highly recommend 'Design of Computer Programs' on Udacity. Its a 300 level class taught by Peter Norvig, and while the quizzes and homework's aren't terribly challenging, its a great way to learn how to break down problems for an intermediate developer.
southphillyman 3 days ago 0 replies      
Correct me if I'm wrong but aren't most bootcamps geared toward preparing people for jobs? I feel like in this current market having to attend a bootcamp as a experienced developer would send off negative signals about one's ability to stay up on current tech/trends.
lukas 3 days ago 0 replies      
I've been teaching classes on machine learning for engineers (shameless self promotion: https://www.eventbrite.com/e/technical-introduction-to-ai-ma...)

One of the coolest parts of teaching these classes is how awesome the people are that show up. The engineers that want to learn new things mid career are exactly the kind of people I want to work with and hang out with. I think there's a real opportunity for more classes like this.

seanlane 2 days ago 0 replies      
MIT's OpenCourseWare [1] has a lot of great material that's as rigorous and in-depth as anywhere you'll ever find. I've been using it to supplement and extend areas where my alma mater's curriculum has fallen a bit short, or where I just want to focus.

[1] https://ocw.mit.edu/index.htm

markfer 3 days ago 1 reply      
I've actually been thinking about starting a Sales bootcamp aimed at teaching technical founders, or people with no background in sales.

Not sure if there would be any interest though.

nilkn 3 days ago 0 replies      
This is not exactly what you're looking for, but it's somewhat similar and may be of interest to some readers of this thread.

The Google Brain team accepts residents:


It's similar to a one-year research-focused advanced degree in machine learning (with the focus being, of course, entirely on deep learning).

werber 3 days ago 0 replies      
Not a bootcamp, but egghead.io is a fantastic resource, and udemy can be an awesome resource for specific classes (but there is a lot of junk to wade through)
mjhea0 2 days ago 0 replies      
I am building out an advanced-beginner course at http://testdriven.io/. It details how to set up a set of microservices with Flask and Docker. Let me know your thoughts. Cheers!
shadyrudy 3 days ago 0 replies      
Want to learn SQL Server from the best? Check out SQL Skills: https://www.sqlskills.com/sql-server-training/immersion-even... They are the best and most comprehensive. Not associated with them, but a long time, satisfied customer.
prettygenius 3 days ago 0 replies      
Does anyone have experience with https://www.udemy.com/intermediate-advanced-java-programming...? I've been eyeballing it for a while, $10 is cheap but I'm afraid that's also indicative of the quality.
zitterbewegung 3 days ago 0 replies      
Although, part of the program is an intro to python development (which you can easily skip) https://www.dataquest.io/ is a set of guided lessons that teach you data analysis/science/engineering .
shalperin 3 days ago 0 replies      
I'm surprised that Coursera and Udacity don't figure higher in the responses. There are a tonne of advanced algorithms, machine learning, data science, and domain specific stuff on there like computational biology and computational neuroscience.
tarheeljason 3 days ago 1 reply      
For data science: http://insightdatascience.com/ only accepts those who have completed a PhD
asimpletune 3 days ago 0 replies      
There's a great option here in SF called BradfieldCS.
jancsika 3 days ago 0 replies      
> I'm past the stage where I need a course on Python syntax or HTML.

It's hard to guess what stage you are at.

What have you built so far in Python?

Maven911 3 days ago 0 replies      
this is more of an AI bent to it but I have heard good things about the following in NY that comes with a job placement:


Turkish GSM networks currently play a message of the President on any phone call
417 points by mrtksn  2 days ago   171 comments top 21
kbody 2 days ago 2 replies      
"As president, I send congratulations on the July 15 National Day of Democracy and Unity and wish the martyrs mercy and the heroes (of the defeat of the coup) health and wellbeing,"

Source: https://au.news.yahoo.com/world/a/36394050/mr-president-erdo...

throwaway76493 1 day ago 1 reply      
There is something equally insane happening on the Turkish internets right now.

At least two major mobile operators / ISPs are injecting JS into web traffic to display pop-up ads / Youtube videos on the lower right corner of every web page. The videos "commemorate" last year's events on July 15 in a language that is, to put it mildly, thorougly in line with Erdogan's ideology, and make a point of offering free data and phone credits throughout the 3-day commemorations being held.

rdtsc 2 days ago 2 replies      
For a additional level of scary allow people to opt out but record who they are and compile a list. Use the list to deny them services or imprison when the next overthrow is attempted."You've been protesting and we noticed you blocked messages from our glorious leader... clearly a candidate for the labor camp"
buremba 1 day ago 2 replies      
Even if you stop watching TV, reading newspapers and following the political people on social media and avoid discussing political news with people, you can't escape from him and his followers.

They will force you to believe what they believe and if you don't, they will flag you and also make you listen their leader no matter what you do to avoid their propaganda.

Even though I believe that the leaders of Gulenist group did the coup attempt and are terrorist, Erdogan gave this power to them and yet acts like he's not responsible from all these shit.

xepbam57 2 days ago 4 replies      
Have anybody thought why you hear the sound(beeeep-beeeeep-....) when you make a call and from where it comes? Yes, telco can put anything there. Even more, I wounder why we do not hear some commercial Ad's every time we call. This would be in a spirit of current times...
mmerlin 2 days ago 1 reply      
So so sad when a country devolves into quasi-dictatorship
toroslar 1 day ago 2 replies      
It's a lie like so much other stuff in the press. I'm currently in Turkey/Antalya, I've a cell-phone with a turkish Vodafone SIM card - I had several phone calls today - no president in my phone.
fouadmatin 2 days ago 3 replies      
The number in the video is 112, which is Turkish-equivalent of 911 in the U.S.
exabrial 2 days ago 6 replies      
Why are they a NATO country again
Fnoord 2 days ago 2 replies      
What exactly is he saying? Can someone translate?
noncoml 2 days ago 4 replies      
I wonder how would things have been if Turket had been accepted to EU 10 years ago. Would it have helped?
Lagged2Death 1 day ago 1 reply      
Dexter Palmer's 2016 novel Version Control had imagined something rather like this in a near-future United States, where phone calls and video screens would occasionally be interrupted by a message from the president.

I had thought it was inventive and evocative, but sort of unrealistic.

I was wrong. Yikes.

NicoJuicy 1 day ago 1 reply      
It's funny to see that Erdogan wants to battle every European country and at the same time he asks us to visit Turkey.

His power comes from the wealth and investments of Western companies, so the people had it good in the past. But this is currently changing. Its 'just' a waiting game.

zagfai 21 hours ago 0 replies      
Use a VPN to stop this happened again.Such as Yoga VPN, Bestline VPN, Super VPN...
AdamJacobMuller 2 days ago 0 replies      
What does this say in English?
homero 1 day ago 0 replies      
When people voted, they were tricked into thinking somehow they were voting against the West instead of installing a dictator for themself
marcxm 1 day ago 1 reply      
OzzyB 2 days ago 3 replies      
appendixsuffix 2 days ago 1 reply      
powertower 2 days ago 1 reply      
Talbotson 1 day ago 1 reply      
This is 100% normal for these types of situations.
Ask HN: What's the worst thing your code has done?
47 points by Procrastes  5 hours ago   49 comments top 24
jnord 4 hours ago 4 replies      
In the early days of my career I had to modify some code for a PLC that operated on a car production line. The modified code took too long to run so a watchdog process assumed the code had frozen and performed an emergency shutdown of the hydraulics of the line's welding robots. Six cars were damaged when the heavy robot arms crashed and buckled car roofs, and the one-car-every-45-seconds production line ground to a halt for 15 minutes.
gozur88 2 hours ago 0 replies      
I wrote some code to manage kits in a warehouse. Like, a customer would order a kit that required A, B, and C. Then the picker would get sent to those three locations and put it all in a box and onto the conveyor belt for shipping.

The problem was the warehouse owner wanted partial kitting. So if the warehouse only had (in our example) A and B, the code would send the picker to put A and B into a box, then direct him to drop it off in a special partial kit area. When C was back in stock, the system would have the workers fill out the partial kits and ship them. This way if a kit required a dozen items and you were just waiting for one to arrive, you could get most of the work done beforehand.

The problem was now A and B are in boxes and not in "inventory". So when someone orders a kit that contains A, B, and D the A and B bins are empty (as all items A and B are already part of a kit and thus not available) and the code would direct him to put D in a box and put it in the partial kit area. Eventually the D bin is empty, so when an order comes for a kit that requires D and E, we get another flood of partial kits, all going to the same location (which was just a square painted on the warehouse floor).

Anyway, long story short, if the right few items were out of stock and the right orders came in the right sequence, nearly the entire inventory of the warehouse ended up in a giant pile of boxes that was too large for the workers to sort through even when the needed items arrived.

Everything was humming along just peachy for weeks and then BAM! Red faces all around. It took days for them to put all the inventory back into the proper bins and fix all the data, and that probably cost into seven figures, all told.

In my defense, I wasn't the last one to touch that module.

zaptheimpaler 3 hours ago 0 replies      
I wrote some code that was pulling batches of events off a queue, doing some processing and then writing them out to HDFS.

The inner loop was something like:

 while message: converted_event = new Event() for event in message.events(): converted_event.set_fields(event) write_to_hdfs(converted_event) 
Can you spot the bug? Led to a month of corrupted data before I noticed..

The `set_fields` method does not clear all fields, so every event had more and more junk data than the one before it. All because i thought i would be clever and get some performance gains by initializing `converted_event` outside the inner loop.

Procrastes 5 hours ago 2 replies      
I'll kick it off with my own. I've had a few, but the most dramatic was when I once changed the wrong line in a configuration script and ripped a three ton(U.S) mixer out of a concrete floor.
tejtm 4 hours ago 0 replies      
Exactly what I told it to do. Which seemed perfectly reasonable to me ...but had my boss running down the hall muttering something about damage control, seems not all biologists liked receiving letters introducing them to other biologists who's results on some marker or another differed in some not trivial way.
sidlls 3 hours ago 2 replies      
Helped the armed forces of my country kill people.
canada_dry 3 hours ago 0 replies      
Almost got me fired on the spot.

One of my first implementations at a bank many years ago... bunch of 'C' levels are in the main branch for my first big launch demo...

Tape a few keys...

LPT: never use this in an else case.

ams6110 3 hours ago 0 replies      
Not my code, but I was involved in cleaning up the aftermath. Financial company, a programmer had made a one line change to clean up some working directory at the end of a program. Something like

 "rm -rf /var/scratchdir /"
Yeah the space was a typo. Wasn't running as root but was able to make a pretty big mess regardless.

istotex 3 hours ago 0 replies      
On the last project I was working on, I built a backend on Node.js v4 for an online course site. For a long time I was trying to convince our team leader to switch to Node v6, since it supported ES6 and I couldn't wait to use the new JavaScript features like, e.g. classes. However, he was always reluctant to make the switch, since there were other priorities at the time.

At some point, I found out that inserting 'use strict' at the beginning of each Node.js module, enabled the experimental ES6 (harmony) features in Node v4. Needless to say, I was super excited and immediately started using classes and other ES6 goodies everywhere, even refactoring already existing modules.

Shorty after that, we noticed that our servers were leaking memory and started crashing almost every day. At the time, I had no idea what the problem was - and believe me I tried everything to find a solution - until a couple of months later we switched to Node v6, and everything miraculously returned back to normal. In the meantime though, during those 2 dreadful months between v4 and v6, we had to setup cron to restart our servers every single day at 04:00...

Never use experimental features.

tatersolid 2 hours ago 0 replies      
I once wrote a server "clean up" script moved all .log files older than a few hours to an archive.

Someone else added it to a group policy for all corporate servers, including all our Exchange servers, where the active database transaction logs are named .log.

donatj 1 hour ago 0 replies      
I wrote code for a domain squatter ad control system as my very first task at my very first job out of college. I am not proud and honestly didn't realize what it was until I got pretty far into it.
davimack 3 hours ago 0 replies      
Not mine, but one I ran into. This is on an automated testing rig for microwave devices, which are odd things - you don't have wires for microwaves, you have wave guides, which are basically tubes which you can pipe the microwave through, and which are incredibly fiddly to get situated properly. So, to test one of these things, you're likely to get a failure and not have any discernible reason for it failing - you'll tear it down and not find any problems, put it back together and it'll work just fine.

Well, the engineer writing the test code knew these devices were odd, and that sometimes they'd just fail. So, s/he put in an if block to the effect that, "if this fails once, run the test 30 times and, if it passes 25/30 times, call it a pass." So, every now and again, the entire automated testing line comes to a halt and sits there for 31x the amount of time it should take, and it's not a short test (maybe sat there 30 minutes each iteration).

allenrb 3 hours ago 0 replies      
Really hoping there's at least one Ariane 5 avionics engineer who reads HN...
carvin 2 hours ago 0 replies      
I was an intern at a university security lab working on a 7 months project. Early on, I figured it would be a good idea to use SVN to save my work so I setup a repository and did a few commits but quickly stopped maintaining the repo.

One hour before the end of my internship, I was ready to leave, my work done, ready to be used for the next person taking over the project. I want cleanup my files and documentation so it is all tidy and I try to commit my work. Of course SVN cannot commit because the repo and my work have nothing left in common. So I type (on a Linux system): svn deleteto cleanup the repo so that I can push my files...I lost months of work and I was not able to recover my lost files from the file system... I had to leave for my country of origin since this internship was part of an exchange program. I felt so bad about it, it still haunts me.

ioddly 3 hours ago 0 replies      
When I was a teenager, I crashed a MUD hosting server by forking a process in a loop. The admin kindly explained ulimit to me. (This was before VPSes were a thing).

I was so mortified, I guess it stuck well enough that that's the worst thing off the top of my head.

But it seems like I'm an underachiever based on this thread.

throwawaysntc 3 hours ago 0 replies      
My code probably contributed to the financial crash of 2007/8.

Unfortunately, I cannot share much details except that I wrote code that was meant to manage the amount of risk that a certain really big financial institution was supposed to take. My code may or may not have shipped after I left that institution. If it did ship, maybe it did not do what it was supposed to do. If it did not ship, maybe it failed to replace the broken system that it was supposed to replace. Either way, months after I left, the head of the institution acknowledged on TV that they were taking on more risk that they intended to.

AnimalMuppet 4 hours ago 3 replies      
We had a microwave generator that was used to cook cancers in living patients. We'd ask for a given power, and we had the ability to read back how much power we actually got. But we didn't check that the power we read back was something reasonable. When an op amp failed, the generator produced full power whenever we asked for any power at all. The patient literally got hot enough to emit smoke.

Thank God, the patient was a pig. We hadn't made it into clinical use yet.

kafkaesq 2 hours ago 0 replies      
Made people rich, who definitely didn't deserve it.
flukus 3 hours ago 1 reply      
Working on school software I forgot to add "and IsDeceased = 0" to a query. Turns out parents don't like getting notifications about their dead childs truancy.
juli1pb 3 hours ago 0 replies      
system("rm -rf $dir/")

I forgot to check my inputs. Ran in production for a backup system.

andrewstuart 3 hours ago 0 replies      
Been unused and irrelevant.
twovi 3 hours ago 0 replies      
rsync -avz project_files/ root@

Essentially production was not acceptable for a little bit....

imaginenore 3 hours ago 0 replies      
Accidentally removed our corporate ID from the ad code, very high traffic website. So the ads displayed, but we were not getting paid for the clicks. $140K lost in a few hours. At the time that was almost double my yearly salary.

Nobody got fired, because we had a QA team, and their testing procedure didn't test for something like that.

Tell HN: I want to teach you finance. In 30 mins. For free
23 points by swyx  2 days ago   18 comments top 13
meric 4 hours ago 0 replies      
I am working on a side project involving stocks and programmatically minimising capital gain taxes (e.g. using Australia's 50% CGT discount) and I'm happy to discuss it. I am not sure but I think UK's capital gains tax law have similar opportunities. I put my email in my profile.
RUG3Y 5 hours ago 0 replies      
I don't have the first clue about finance but I'm really interested in learning. I'm willing to share whatever I have to offer in return (it's not much -- but sometimes a new perspective can mean the world).


warrenb 4 hours ago 0 replies      
I think this would be brilliant! I have skills but finance is not one of them. A chance to get a bit of a grip on such an important field is a real opportunity!
barbaricmelons 9 hours ago 0 replies      
I'm an artist working directly on a team with software developers instead of being an actual developer, but if your offer is open I would love to talk investing since who knows how long I'll be lucky enough to have this gig.
r0brodz 9 hours ago 0 replies      
I want to get out of poverty and I have skills but no network. brainacid9 At gmail .dot com
toomuchtodo 1 day ago 1 reply      
I'm a tech ops/security guy who would love to know how to love into investment banking/hedge funds.
sebst 19 hours ago 0 replies      
Would love to chat. DM me on Twitter, please. @sebastiansteins
sakuraiben 1 day ago 1 reply      
I'd love to discuss finance with you - shuumai0318 at gmail.com
roshan_arhsim 1 day ago 1 reply      
It would be awesome if you can make a video /course on a topic you think everyone should know. I would be happy to pay for it to learn more about taxes.
avisaven 2 days ago 0 replies      
I'd love to talk about cryptocurrencies/software engineering/cybersecurity if you're interested.avi . saven (at) gmail
payrainbow 1 day ago 1 reply      
I would love to learn more and have an exchange of ideas. amonxnye@gmail.com
c0l0nelpanic 1 day ago 0 replies      
I'm a software engineer and would love to have an exchange of ideas. the.latoya.banks@gmail.com
SirLJ 1 day ago 1 reply      
How about a more detailed CV with exact positions and company names and contact information and a track record? Free financial advice is always a scary proposition to me, maybe because I work in security and my job makes me cynical and a little paranoid...
Ask HN: Are UML diagrams still used today?
34 points by tzhenghao  2 days ago   23 comments top 15
kpil 2 days ago 1 reply      
I think that entity-relation diagrams are underused, especially when analysing requirements with stake holders.

Unfortunately a lot of otherwise capable people that could benefit from some simple structuring of things and their relations have never thought about the world in that way and may take a little while to catch up.

In some cases I have found it to be easier to represent one-to-many relations as a bunch of stacked boxes on the "many" side. But that only works once...

Sequence diagrams and state-charts helps from time to time, but does not really help much when talking to non-professionals.

But I don't really like the very formal UML. Some bubbles, arrows and crow's feet will do fine in most cases. The precision promised by UML is really a lie, as most diagrams are simplifications and can probably not represent the actual complexity in anything that warrants the use of UML...

Anyway, I think it might actually be a good idea to do some simple entity-relationship analysis in schools at some point, if not to just get another tool for sorting out the mess.

The underlying reason that led to OO-languages still exists, namely that a lot of things can be described rather nicely with entity-relation maps. It's just unfortunate that the "relation" part was forgotten, and all energy was spent on wrestling various languages into bizarre "OO" hacks such as C++.

arca_vorago 2 days ago 0 replies      
In the sysadmin world yes but not nearly enough. UML along with similar ones like blockdiag and nwdiag interface nicely with my documentation systems in orgmode and asciidoc.

One of my side projects is an automated nwdiag mapping system with diff's to be able to help sysadmins coming in blind to orgs (happens way more than you'd think, usually a 5 yr old visio file somewhere).

Anyway, in the future I see uml style things as useful for similar automation projects, due to the simple text nature.

Also, I live in a terminal most of the time so personally prefer stuff like nwdiag over say visio or some of the alternatives.

I also used to make repair flowcharts with seqdiag for my t1 and 2s.

EliRivers 1 day ago 0 replies      
UML diagrams. I sometimes use sequence diagrams, but almost certainly with all the wrong symbols and so on. They're just parallel timelines showing communication between conceptual objects.

Otherwise, all I've ever seen anyone do is take their actual design diagrams and laboriously turn them into UML diagrams of some kind for a document. The recipient then took the UML diagrams from that and made their own new sketches from that, turning them into something they could easily read and understand and that generally looked very similar to the original diagram that was laboriously translated into UML.

My conclusion is that a UML diagram is better than nothing, but not as good as a well-written and well-explained design. I suspect UML diagrams are meant to be part of a well written, well-explained design, but for any given design there seems to be a better way to draw it than UML diagrams.

jjgomez 15 hours ago 0 replies      
They are, but perhaps agile methods who diminish the importance of documenting have played against it. We will see what price we have to pay for this.

In my experience, people don't like to document, developers even more, and managers probably don't like to read documents, either. However, if people leave your company (something highly probable), how are you expected to train the new people?

If you are working in a startup, that's not major problem: the startup may just die and you can have fun programming in the meantime. However, if there is company that intends to last more than a few years, ways of documenting your system are needed.

IMHO, not using UML, or any other language, to think about our systems or even tell others how they work is a complete mistake. It is not only for telling others (colleagues and future workers) what the system does and why it does it that way, it is also to save effort and realize sooner that it will not work.

So, whatever the case, training in how to explain your system to others is required. Call it UML or whatever. And, since UML is there, it may be worth to use it. It is not just the invention of a couple of mad engineers. You are free to use UML as you like. And do not need to use a huge tool. Text UML is a nice and refreshing way of looking at UML which I strongly recommend. Have a look at http://planttext.com, for instance.

BjoernKW 1 day ago 0 replies      
A few months ago I wrote this https://news.ycombinator.com/item?id=12879493 and I think that's still valid.

Simplified UML class diagrams (i.e. boxes and arrows) are expedient for explaining specific aspects of a design. Complex class diagrams trying to give an all-encompassing picture of an application: Not so much.

Sequence and activity diagrams can be quite useful for clarifying application state, too.

based2 2 days ago 1 reply      
Yes (ex: with plantUML for a just quick DSL draws) and you can use Archimate too. (http://www.archimatetool.com)

Are you using RUP? https://en.wikipedia.org/wiki/Rational_Unified_Process

7ewis 1 day ago 1 reply      
I'm doing a degree part-time, online, and that's the only time I've ever used UML.

I work at a kind of graduated tech start up, so we're doing most things the modern way. I've never even heard anyone mention UML.

palidanx 1 day ago 0 replies      
For software projects with new clients, I use cacoo.com and create simple domain and sequence diagrams to capture more complex workflows. I usually don't tell them it is UML and say these diagrams help better express workflows.
beders 2 days ago 1 reply      
I just call all my diagrams "boxes with arrows" nowadays ;)
kbody 1 day ago 0 replies      
In the past 2 jobs even though it was just small startups with less than 5 devs, we used them in relatively critical or complex cases, but it wasn't anything formal (e.g. for every major component introduced do this).

I personally like them, maybe because I like thinking of the big picture no matter the task, plus we had extensive practice on uni.

racktash 2 days ago 0 replies      
Where I work, we use it extensively for analysing problems and designing code. It's invaluable for communicating and collaborating on designs.
softmodeling 1 day ago 1 reply      
More than we tend to think. Less than I'd like.

But the key to benefiting from UML is to first decide what subset of the whole language you need and focus only on that. Very few companies will find a use for the 13 types of UML diagrams.

seanwilson 1 day ago 1 reply      
I've not seen anyone use any UML for years to be honest except for class diagrams or something similar to give a high level architecture overview or to explain how major components interact.
edimaudo 1 day ago 0 replies      
Of course! Great design starts with UML.
Jugurtha 1 day ago 0 replies      
Just for memo (for me or someone else):

For Python code, one can use pyreverse to generate UML representation.

Ask HN: What is preventing rust from replacing c/c++?
20 points by bulldoa  6 hours ago   40 comments top 23
jfaucett 5 hours ago 2 replies      
Basically I think it boils down to the fact that the c/cpp tooling is actually really sophisticated at this point and developers have already learned how to deal with the pain points of c/c++ so there is little incentive to change. Especially, since it means swapping out a highly advanced ecosystem i.e. UnrealEngine for the chance to spend the next 5 years building your own not-as-good system to then be able to start to program your own game. And its like this in every C/C++ industry I'm aware of (embedded devices / games / desktop apps).

I'm a rust fan, even more so of cargo (wish C/C++ had a cargo). But at the end of the day it almost always boils down to transition costs vs. benefits, and the benefits currently don't outweigh the transition costs IMHO.

fulafel 4 hours ago 1 reply      
What's preventing the tree you planted from replacing the old tree next to it? Nothing really, ask again in 30 years.

Software is slow, your OS and browser have taken 20+ years of C/C++ development with top professional development teams to become the nearly tolerable products they are.

memracom 3 hours ago 0 replies      
1. Rust is not C/C++2. Lots of software is already written in C/C++3. Rust follows the same convention as C/C++, that you integrate functionality by writing a library, compiling and linking it into a monolithic binary4. Systems that rely on a monolithic binary are NP hard to replace with something different5. Replacing a monolithic binary works best, in practice, when it is done by refactoring into services that are integrated by something other than a link editor. Although the buzz is all about web microservices, the reality is that message queuing to tie together microservice, macroservices and monolithic binaries, provides better performance more consistent with the linker/monolithic model.6. Go with its channels and packages may be a more advanced model, and is also competing with Rust. In other words, it is not just a question of comparing Rust to C/C++7. The JVM with its JIT has in many cases equaled or exceeded the performance of C/C++ monoliths, but languages like Clojure and Scala take it well beyond mere Java.8. It may be that replacement of systems is driven more by economics than by technology. In other words it is not Rust that will determine the fate of Rust, but the economic sucess of companies using Rust for mission critical systems. In 20 to 30 years, the businesses that have succeeded will determine which technology is better.
kennywinker 2 hours ago 2 replies      
Just one data point, but: I'm currently learning about embedded microcontrollers. The standard starting point for this is arduino, which is C/C++ based, so there is a strong pull towards C++ already. But I really wanted to avoid C/C++, and I spent a long time researching alternatives. Rust was one of the most mature for MCUs, but a) it's not very mature and b) you have to pick an MCU with a lot of flash memory as even the smallest rust binary is >100kb. For reference, one of the chips I've been testing out for this project has 127kb of flash. This evening I loaded on a medium-sized C++ project and it took just 24kb.

So that's what's preventing ME from using rust instead of C++

fuwafuwa 5 hours ago 0 replies      
Code already written in C/C++. I don't think there's anything stopping Rust from snowballing at this time. It's built some very strong libraries for certain problem domains, and because there's package management, it's possible to reuse it. This has already substantially reduced the friction of "systems" programming since you don't run into a challenging build process. But for the majority of folks the answer for an immediate need is still a tool or framework they already use.
twobyfour 5 hours ago 0 replies      
Inertia. You don't rewrite an existing codebase unless the current one is simply not capable of doing what you need it to. And there are a lot of existing codebases in C and C++.
afuchs 3 hours ago 2 replies      
Why hasn't another language, like Ada with similar goals to Rust, replaced C/C++?
kierank 5 hours ago 0 replies      
People to write code instead of sitting on their high horse. That and performance as good as c, not c-like, not selective benchmarks, not other nonsense.
nickm12 1 hour ago 0 replies      
This question is both a leading and also ill-posed. What is preventing Rust from replacing C/C++ _where_? In existing applications? For new code development? In some particular application (e.g. game engines)?

There are lots of good answers in the comments here. I think Rust has a good story for why you might choose it over C/C++ for some uses today, but it's still early days. If Rust is going to take share from C/C++, it will do so over the period of decades, not years.

trelliscoded 3 hours ago 0 replies      
Greenfield systems work by startups isn't really done these days. If it's not greenfield, it's probably already in c/c++. If it's not a startup, they probably already have a bunch of expensive c/c++ tooling (static analyzers, IDEs, CI systems, ...) that they aren't going to get in rust.
jstewartmobile 1 hour ago 0 replies      
The chorus of Rust zealots who can't let a week pass by without writing yet another "Why won't you stupid plebeians stop using C++?" article.

That alone makes me want to crack open some STL code just to spite them, and I hate C++!

goodplay 2 hours ago 0 replies      
Another reason that I don't see given its fair chance might be politics. The human race has a wide variety of values that are often counteracting. Forcing a specific set of values participants must adhere to in order to interact with the community will undoubtedly alienate adopters.

That's why most projects, companies, and even governments tend to strip down the rules that govern them to what is necessary for them to function (e.g. separation of religion from state for governments).

The common reason given by the rust community to justify their behavior is that technology does not exist in a vacuum, and that technology can not be separated from politics. I completely agree. However, politics should be tackled on a layer incompletely independent from technology. Mixing the two only causes instability and uncertainty for rust. Here are two risks that arise from this mixing. I'm sure there are many, far more serious, risks besides these two:

- What happens when (not if) a significant shift in values occurs in the community? Will it collapse?

- What about technical or legal changes to the project that were driven by community values rather than technical or legal merits? This is not far fetched when technology and politics are made inseparable in the way it was done in Rust.

I use rust in a professional context, and I appreciate what it brings in terms of technical benefits. but I would be lying if a said this aspect of it didn't worry me. I can not recommend its adoption to colleagues from other companies if asked for this very reason (I was asked once so far).

Community instability or the mere perception of such is a big barrier to adoption, at least for companies.

cbanek 2 hours ago 0 replies      
It doesn't need to replace it (it's not like c++ is being deprecated), and there has to be real reasons to port over existing code, because there are real costs.

The technically best format doesn't always win. Just look at Betamax vs VHS.

wbond 3 hours ago 1 reply      
For me, equivalent support for the MSVC toolchain on Windows. Obviously it won't ever be 100% without support from Microsoft, and a lot of work has been done, but some items on https://github.com/rust-lang/rfcs/issues/1061 feel important enough to give me pause before spending much time with Rust.
altotrees 4 hours ago 0 replies      
I would've started using Rust way sooner if academia hadn't forced me to use c++ or c for anything systems related. Upon graduation I felt like a kid in a candy store with all the languages and platforms I hadn't tried in my four years of fun.
childintime 2 hours ago 1 reply      
I guess that, if you can dislodge C in the embedded space, everything else will follow.

So my question is: when can I use Rust on the Cortex M0 (or on a 32 bits RISC-V), with an interactive debugger, preferentially from a simple IDE?

Sag0Sag0 3 hours ago 0 replies      
Also some people just do not like coding in rust and that combined with the fact that its new means they refuse to switch.
AnimalMuppet 5 hours ago 1 reply      
Changing languages isn't free. Rust isn't enough better than C++ for most developers (or their management) to switch.

Or, if you're more of the skeptical sort, Rust doesn't seem to be enough better. You could argue that C++ developers don't think they write code that creates memory issues very often. So they underestimate the benefits. (And the borrow checker is a different concept, so they may also overestimate the costs of switching.)

The net result, though, is that they perceive the benefits to not be worth the costs.

solidsnack9000 4 hours ago 0 replies      
If it happens, it will take some time. Java has been replacing C++ for many years now...
symlinkk 5 hours ago 0 replies      
Over 30 years of momentum.
jlarocco 3 hours ago 1 reply      
Why would it?

As a C++ developer, I think Rust's main selling point (memory safety) isn't as big of a problem as it's made out to be. For every unsafe memory access that results in a crash or exploit, there are millions and millions of memory accesses that work just fine and never cause a problem. Tools like Coverity and Valgrind can catch a ton of errors, and its not clear Rust offers any significant advantages over C++ with Coverity.

Parallelism is nice, too, but C++ already has a ton of options there: OpenMP, MPI, TBB, OpenCL, standard library threads, boost/standard library async tools, etc.

On the other hand, as an end user, "written in Rust" or "written in <any language>" isn't something I care about. I don't even remember the last time I had a piece of software crash due to a seg fault, so a vague promise of being "safer" isn't good enough to accept an otherwise inferior product.

I guess to summarize, C and C++ developers are going to keep writing C and C++ and if Rust is going to take over the world, the people advocating for it will have to write better software in it and beat out software written in the other languages.

flukus 2 hours ago 0 replies      
Binary compatibility. As a developer I want to be able to:

1. Write an app in rust.

2. Use a rust library in that app, via the native rust interface (using c interfaces negates a lot of the pros of rust).

3. Dynamically link that app to the distro repository version.

4. Have the distro apply security updates to that library without recompiling my app.

5. Ignore cargo completely.

As a user I want to:

1. Not download and install multiple copies of common rust libraries (as is the cargo norm).

2. Not be in doubt whether a particular application is using the latest patched libraries.

It seems that rust community has learned from the mistakes of c, c++, and java. But they failed to learn the successes as well.

joshAg 4 hours ago 0 replies      
Ask HN: What is your password management solution?
184 points by ericb  2 days ago   294 comments top 89
benjaminjosephw 2 days ago 6 replies      
`pass` is a nice command line tool that stores gpg2 encrypted password files. It's simple, super handy and doesn't require you to trust any third party with what you're storing.website: https://www.passwordstore.org/man page: https://git.zx2c4.com/password-store/about/
dannysu 2 days ago 8 replies      
I use KeePassXC [1], which is open-source, and I sync it across my iPhone, Windows laptop, and Linux desktop via Tresorit [2] (like Dropbox but end-to-end encrypted). It's secured with a password that I know, and a keyfile that I have. I don't sync the keyfile and always manually transfer to new computers.

I also use Arq [3] to automatically backup to S3 every hour, and I also do manual backup to my external backup drives once in a while.

 [1]: https://keepassxc.org [2]: https://tresorit.com [3]: https://www.arqbackup.com

dheera 2 days ago 13 replies      
This is my password manager.

 password = b64encode(hashlib.pbkdf2_hmac( 'sha256', (master_password + '/' + domain).encode(), b'', 100000 + n )).decode()[0:16] + 'Aa$1'
master_password = some master password that you never write or store anywhere

domain = domain name for the service in question, e.g. 'facebook.com'

n = the nth password being generated for the domain (typically 0)

The 'Aa$1' is to ensure satisfaction of stupid password rules on various websites.


- Open source. You don't have to use some random person's password manager software that you have no clue how or where the passwords are being stored or the trustability of the people who wrote the software.

- Portability. You can run this on any OS including a phone with a Python implementation, and it's pretty easy to port the above to any other language with a hash library.

- No files to lose. You don't need to worry about losing a password manager's database, you don't need to worry about syncing the database across machines, and you can compute the above on any machine that you own and trust. Kernel panics while you're on vacation? No worries! Reformat your PC with a fresh Ubuntu install and compute the above to get access to your bank account, plane tickets, and e-mail again.

jzast2 2 days ago 4 replies      

Free to use, auto password generation, has an iOS app with thumb print unlock (saves you from typing in a long master password).

I personally really enjoy it.

linopolus 2 days ago 3 replies      
1Password. Don't know what they're about on Windows, as I'm happy to not use this shit anymore. On Mac and iPhone, I can happily use the newest version without any subscription or anything (which I didn't even knew about)..
onetom 2 days ago 2 replies      
Subscription to 1Password is not mandatory.Or at least it was not in the past.Without a subscription, you can create local vaults which can be synced via Dropbox, iCloud or over WiFi within the same subnet (which means over VPN too).

Here is some documentation on the Dropbox sync for example:https://support.1password.com/sync-with-dropbox/

mhw 2 days ago 1 reply      
PasswordSafe - https://pwsafe.org

I use the open source version on Linux and Windows, and https://pwsafe.info on Mac and iOS, all syncing through Dropbox.

temporaneous 2 days ago 1 reply      
I memorize my passwords and reuse them to a large extent. Strength of the password is actually a lot less important than the website's security and the value of the account.

* relatively weak/old passwords for sites I don't care about and would lose nothing if they were compromised (vast majority)

* a couple relatively strong passwords for the 5-6 sites I don't want compromised, but wouldn't have huge consequences and could be email recoverable.

* unique strong passwords for a couple vital services such as email account.

The re-use depends somewhat on how much I trust the site's security. Also I cycle occasionally by introducing new passwords at the "top" and moving those passwords "down" to less important sites.

zachrose 2 days ago 3 replies      
1) Make up a unique password on the spot.2) Log in and forget it.3) Reset password.

Works every time.

dewey 2 days ago 2 replies      
1Password & gopass (https://www.justwatch.com/gopass/, it's "pass" compatible if you are using that already). I don't really mind the subscription service as it works fine across all platforms I use.
jobvandervoort 2 days ago 2 replies      
> I want something that keeps an encrypted file that I can put in dropbox

FWIW You can do this with 1Password. Preferences > Sync > Sync with Dropbox

joshuahutt 2 days ago 0 replies      
I used KeePass on Windows, and I use KeeWeb on Mac. KeeWeb is fast to search, allows for the inclusion of arbitrary data and tags, has a password generator, and it does autotype, which is nice. Also, it's open source.


stirner 2 days ago 1 reply      
I use iCloud Keychain on macOS and iOS. Both operating systems include a rudimentary interface for managing passwords, and automatically store passwords entered in Safari. Keychain Access on macOS also allows to create secure notes on iCloud Keychain.
richardpetersen 2 days ago 6 replies      
Enpass all the way. Free and works with dropbox
odammit 2 days ago 0 replies      
All of my passwords are kitt3nZ!PIzZA837591&#! Which I simply copy and paste out of an iCloud Note.

I use HashiCorps vault running on a micro EC2 with a small API written around it. Then I access it using a CLI I built and a key pair.


- I don't pay for a service (the ec2 instance was already running)

- I don't use someone else's software that is hopefully secure

- I got to play with Vault for an afternoon


- I've probably done something wrong and I'll end up paying for it the hard way eventually

- I had to spend about an hour building something

ameister14 2 days ago 5 replies      
I just use lines of poetry for my passwords. They're long enough, complex enough, but extremely easy for humans to memorize.
duebbert 2 days ago 0 replies      
Oh I gotta show off my Keepass (http://keepass.info) with Ubuntu on Win10 setup which I just sorted out this week. The Keepass DB is saved on Dropbox.

I use it for all my passwords but crucially also as a SSH Agent for Bash, Git, Pycharm and WinSCP. My SSH keys are in Keepass and it gets used by Git, Pycharm and WinSCP. So all I need to do is unlock the database and it just works when using SSH in Bash or Pycharm or WinSCP or Git.

Anyway, the setup was a bit tricky to find out but it works very well (for me) now. I have documented it here because it might be useful to others: https://gist.github.com/duebbert/6a152ad2030e8dcb6d860802758...

wazoox 2 days ago 0 replies      
I'm using KeepassX with Dropbox. I store the database on Dropbox, so that it's available on my computers running different OSes (Ubuntu, Slackware, MacOS) and my phone at all times.I'll probably get rid of Dropbox at some point, but I'll keep the same method, which gives me complete satisfaction.
retor 2 days ago 2 replies      
Google passwords. I trust their engineering, it's free, passwords are accessible as long as I have a browser and it comes with Chrome.

Negatives: I can't do backups, easily migrate to another supplier and it won't work automatically with other browsers. And it's Google (feels privacy invasive)

danieldk 2 days ago 0 replies      
If the problem is storing data in the cloud, you can still store data locally (outside the 1Password cloud) with the subscription version. Go to "Preferences" -> "Advanced" -> "Allow creation of vaults outside of 1Password accounts".
wodenokoto 2 days ago 0 replies      
I use a system where I mix a counter, a master password and website URL.

I don't hash it via a software algorithm, it is a system simple enough to do in my head.

I basically only have to keep track of the counter for the few websites that have forced me to change password.

The counter exist both as a number and spelled out, ensuring that changes in password differs enough for websites that require new passwords to not be similar to old passwords.

It is as secure as any 8-10 character password, except if a person is targeting me, and manages to get 2 or more passwords, there is a chance that they'll notice the system.

But if I am targeted by someone who can crack multiple of my online passwords, then I have pretty much given up hope for my safety.

FfejL 2 days ago 1 reply      
Enpass, all the way. Free (Gratis) on Mac, Windows & Linux, US$10 for iPhone or Android.

100% local storage, or sync the encrypted file via Dropbox.

jchw 1 day ago 0 replies      
Interestingly enough, I immediately moved from LastPass to 1password when I heard about the subscription service. Why? Because I trust AgileBits but last time I wanted to run 1password I was going to need to pay a shit ton of money just to get it on Most of my platforms. Now, overall I'll pay more money, but I don't have to worry about how many platforms I use or upgrading periodically.

Plus, syncing is done right automatically. Sure, AgileBits could go out of business and I'd not be able to use 1password anymore. That's fine. It took one day to switch from LastPass. The lock-in is minimal. I'd rather not continue using a piece of security software without updates being released.

(Even if they did, I have a gut feeling they are classy enough to open source the server, though. It looks like the app already is built with the possibility of connecting to 3rd party sync servers.)

And it looks like a real solution is in the works for Linux finally, so there's that.

leemck 2 days ago 0 replies      
I have been managing passwords for more than 12 years with an encrypted vi file. Inside the file, every login uses a unique password. I generate unique passwords in batches of 100 or so using a script that I list below.

This scheme has the obvious single point of entry weakness and a further keystroke logger vulnerability. I have never had any of the 360+ accounts and logins compromised.

It is very important to not use the browser for secure activity if one has been browsing Internet junk recently. I have no doubt that all kinds of keystroke logging scripts do get started. I occasionally run rkhunter and top looking for intrusions and compromises.

Script for making big batches of passwords:

 File of passwords. First 99 are lettes usable for names, next 100 is pasword strings. 1-6-2008 Here is the command line: (/usr/bin/apg -a 1 -n 99 -m 11 -x 13 -M CL; /usr/bin/apg -a 1 -n 100 -m 17 -x 23 -M NCL ) | cat -n

grigory 2 days ago 0 replies      
I use passpack to generate/store passwords, remember them in Firefox, and let Firefox Sync get them onto my different devices. Works pretty well!

My host of devices includes multiple laptops (Linux, OS X) and many different phones - both Android and iOS. Since Firefox runs everywhere, this works nicely. Firefox Sync has end-to-end encryption, but data stored at-rest on devices is guarded purely by physical access, which is fine for my use cases.

lazard 2 days ago 0 replies      
I used pwclip [1] for several years but I no longer believe that hash-based password managers are the best plan. Now I'm using Seal [2], which is like pass but doesn't depend on gpg.

[1] https://github.com/davidlazar/pwclip

[2] https://github.com/davidlazar/seal

jlft 1 day ago 0 replies      
Secrets is a good alternative (Mac + iOS only): https://outercorner.com/secrets-mac/

Details on how Secrets store data: https://outercorner.com/2016/08/01/storage_format.html

makmanalp 2 days ago 0 replies      
Of the open source password wallet solutions, which ones have actually been audited?
rdl 2 days ago 0 replies      
I currently use 1Password (local) on iOS and OSX, and use 2FA wherever possible as well.

I'm unhappy with support for windows/linux/chromeos, so I was already looking for alternatives.

I manage certain passwords (PGP keys, some very high privilege accounts, etc.) separately (primarily offline, and some split).

Considering building/paying to have built something that truly meets my needs, since my needs are fairly general.

skinnymuch 2 days ago 0 replies      
I use 1Password and have used it for 5+ year a now and love it. I used to pay one time fees. They were doing a sale for their pricey subscription service when my business partner got interested in using a password manager. So he bought an annual subscription for the both of us at a sale price. I think it ends up being $60 a year for the both of us.

Being able to use different shared password vaults has helped us a lot. As our business entails going through lots of quick sites before moving on to new ones, along with working with different partners.

Sure it still isn't "cheap", but I get a good app and browser plugins on all major platforms.

I highly prefer 1PW to Lastpass because it is much easier to get a lot of different form fields saved into 1PW along with easily adding any number of your own. Lastpass plugins also aren't the greatest.

I'd move to KeePass if I hadn't to stop using 1PW. But I doubt I'll switch while doing business. Shared repos integrated tightly into the UX is too helpful.

fgcbs 1 day ago 0 replies      
I have used for year a KISS (Keep it simple) solution: I have a directory encrypted with encfs where I keep all sensitive data. The directory is shared through dropox by all my devices. In this directory I keep a plain text file with all passwords, domain, used email.... It is actually a YAML file cause I also have a simple groovy scripts that pastes the password (given domain or key) in my clipboard, but any text file would do the job. As simple as that.
0xTJ 2 days ago 0 replies      
I use Keepass 2. With a plugin, it's synced to Dropbox, where I can access it on my Android device with one of the compatible apps.
SirLJ 2 days ago 0 replies      
My best solution is to not discuss password management on public forums...
diimdeep 22 hours ago 0 replies      
I have made plugin for original keepass to import from 1Password 1pif https://github.com/diimdeep/1P2KeePass
JesseAldridge 2 days ago 0 replies      
I have one simple master password. I modify it slightly based on the url of each website. I have a text file backed up on Dropbox with any special rules for the password on each website (e.g. "turbotax: capitalized + bang").

Works great as long as you can resist the urge to tell other people about your system!

miguelrochefort 2 days ago 0 replies      
> I want something that keeps an encrypted file that I can put in dropbox.


bgschiller 2 days ago 0 replies      
I wrote about my (mac-specific) pass setup at https://brianschiller.com/blog/2016/08/31/gnu-pass-alfred

It uses Alfred to get fast, autocompleted access to passwords.

jasonincanada 2 days ago 1 reply      
I rolled my own solution a couple years ago: https://gridpass.io/

Your master password is remembered visually, instead of as an arbitrary string. My contention is that you're less likely to forget specific spots on distinct images than an arbitrary sequence of characters. The method has worked perfectly for me since I began using it, but only one other person I know uses it, and it has NOT been audited or scrutinized by an expert in the field. Nonetheless, check it out. It's free, being more of an idea than a technology. Besides, I can't charge you for something you've stored in your own visual cortex!

jvehent 2 days ago 1 reply      
I wrote https://github.com/mozilla/sops to manage secrets in our deployments, and also use it as my personal password store, to encrypt a file stored in a private git repo.
marvelous 2 days ago 0 replies      
I use Firefox sync for my web needs and a plain text file (on my encrypted laptop) for everything else that doesn't fit into that. The more sensitive stuff (credit card, computer unlock) is in my brain with a hidden paper backup.
Leftium 2 days ago 1 reply      
I use https://pwdhash.com algorithmic password generator. It is the sweet spot of more security without too much added frustration.

Usually I use the Chrome extension, but when that fails I built a more user friendly web interface: https://ph.leftium.com

To avoid having to change all my passwords at once when one password must be changed, I suffix my master password with a sequential suffix. In the worst case, the last few suffixes don't work and I use the service's password reset feature to update the password to the latest suffix.

rnentjes 1 day ago 0 replies      
A while back I was looking for an online password manager that you can host yourself (I don't trust my passwords with anyone else).

I couldn't find one that matched my requirements so I build one myself:


cmcginty 2 days ago 0 replies      
I use MacPass (KeePass OS X client) and sync the DB with a (2FA enabled) Box Sync account.

I use the Chrome ChromIPass plugin for user/passwords autofill. There is also a FF plugin, but I usually stick with Chrome these days.

I tried to switch to Lastpass but I found that a) the plugin was a terrible resource hog and b) would make some sites unusable due to ridiculous page load times. Obviously it works for some people, but the attack vector of sites like LastPass are so large, I was never comfortable following the masses.

latkin 2 days ago 0 replies      
1Password synced w/ Dropbox. Using Windows, MacOS + Android support. Very unhappy about the recent push toward subscription-based model, though, so I'm starting to look around for something new. Lots of good options in this thread.

For those in need of a cross-platform (Windows, Mac, Linux), open source 1Password CLI client, check out https://github.com/latkin/1poshword (disclaimer: my project)

petraeus 13 hours ago 0 replies      
You can use 1 password stand alone with dropbox as the storage.
standalone1p 2 days ago 0 replies      
MacOS version still able to buy standalone license here without signing up for an account:


nzealand 2 days ago 0 replies      
I use firefox bookmarks synced using Xmarks.

Each account has a unique email address, and important accounts have a unique password element added.

I use firefox bookmarks to note down in a cryptic manner any variations to the common themes I use. The bookmarks are synced across computers.

The upshot is I always use firefox bookmarks to log in to a site, which means I am not clicking links from emails and I am always in an extension free browser.

TazeTSchnitzel 2 days ago 0 replies      
I use an encrypted disk image (in this case a macOS .dmg, but it could be any similar format) filled with text files that I edit in vim.

I don't use random passwords, I use (mostly) memorable ones. I mount the disk image only when I forget one. It's an aid to help me memorise passwords and keep track of important information (reference numbers etc), not a single point of failure without which I can't get into anything.

ruanmartinelli 2 days ago 1 reply      
Enpass is what you are looking for!
josteink 15 hours ago 0 replies      
Firefox + Firefox sync + ssh keys.

That's all I need and that works for me.

free_everybody 2 days ago 0 replies      
I use keeweb as a desktop app, and I save the file locally, backing up to gdrive and cold storage hard drive weekly.

My laptop is my primary device so I'm not too concerned with logging into accounts on mobile, but if I really needed to get my passwords without my laptop, I could get use the keeweb web app with my gdrive backup.


peterwwillis 2 days ago 0 replies      
I memorize multiple passwords.
bantunes 2 days ago 0 replies      
I use a Mooltipass Mini https://www.themooltipass.com
bgrohman 2 days ago 1 reply      
I switched from LastPass to KeePassXC a few months ago after reading about some LastPass security problems. I really like KeePassXC.
paulrd 2 days ago 0 replies      
I use Universal Password Manager (UPM). It runs everywhere, syncs to dropbox (or wherever), pretty fast start time even though it's java. Github link: https://github.com/adrian/upm-swing
rntksi 2 days ago 0 replies      

You can have this on MacOS, Windows, your smartphone.

Great when you only have your phone with you and you need to login somewhere to do stuff.

madhadron 2 days ago 1 reply      
I still use a GPG encrypted org-mode file. Emacs/org-mode opens it seamlessly.

I feel like I should move to Keepass at some point, but it's one of those cases where if I'm apathetic long enough, Keepass will be gone and I'll still have my Emacs setup.

cagey 2 days ago 0 replies      
Password Safe[1] (almost entirely on Windows clients) and version control on home server via ssh. And most of my passwords are memorized by my Google account.

[1] https://pwsafe.org/

3pt14159 2 days ago 0 replies      
I use this ruby script:

 print ((rand * 1_000_000_000).to_i.to_s + \ ("a".."z").to_a.sample(10).join + \ ("A".."Z").to_a.sample(10).join + "_")
It solves a number of annoyances. First, it's easy to type on mobile if you need to for some dumb website that clears your input field when you alt-tab, since it sticks to numbers, letters, then capitalised letters. It contains a non-alpha numeric character, but at the end for stupid forms that don't allow them.

As for keeping the passwords around, you can do one of a couple things, but I generally just forget the password after logging in with it everywhere. I'm signed into chrome, so what's the point in remember the password myself? Unless it's something sensitive I don't bother. It's easier to generate a new one than to dig it up.

hampo 2 days ago 1 reply      
> I'm a bit unhappy with 1Password. I don't want a subscription service, I want something that keeps an encrypted file that I can put in dropbox.

> What is everyone else using these days?

I use a self made password matrix in paper.

jokoon 2 days ago 0 replies      
Sheet of paper and pen.

Change it every 3 years or so.

Reset my passwords often, have to use my email often.

raverbashing 2 days ago 0 replies      
gpg -c / gpg -d with master passwords for different things

also one .sh to save the data to a tmp file, open it in your editor then override it (the tmp file) with random data upon exit

mosodede 2 days ago 0 replies      
KeePass and KeeWeb are both great interfaces that can read KDBX format. I sync with Dropbox and encrypt with a private key that I carry with me or keep on my main machines.
tarp 2 days ago 0 replies      

You can self host the webapp, or run the desktop app. You can store your file on Dropbox

justifier 2 days ago 0 replies      
What are the hidden requirements of your question?

As asked you can just use gpg https://www.gnupg.org

erikpukinskis 2 days ago 1 reply      
Answering this question publicly is a very bad idea.
louismerlin 1 day ago 0 replies      

No database, no problem.

sakawa 2 days ago 2 replies      
Just a follow up: what do you use for secrets files, like ssh keys?

Everytime I find my self in some mess with too many keys to manage. :\

paulpauper 2 days ago 1 reply      
write it down and put piece of paper in pocket
X86BSD 2 days ago 0 replies      
I use Vault from hashi corp for everything.
mongol 2 days ago 0 replies      
I think PasswordSafe is good. Combined with storage in OneDrive and the Android app it solves my needs.
mnm1 2 days ago 0 replies      
Enpass. Does exactly what you describe.
SAI_Peregrinus 2 days ago 0 replies      
KeePass2 is my preferred password manager. KeePass2Android is a good Android app version.
Havoc 2 days ago 0 replies      
Lastpass. Not super convinced their security is bullet proof, but meh close enough
hungerstrike 2 days ago 0 replies      
I use KeePass on my desktop and KeePass Touch on my phone. It does exactly what you want.
GlassOuroboros 2 days ago 0 replies      
KeePass inside of a Qubes OS qube.
krapp 2 days ago 0 replies      
Simple. I only use one password for everything: "Melody Nelson"
srinathkrishna 2 days ago 0 replies      
vim has a command line switch to encrypt files when they are written. I use my password file on mac, linux and windows and vim works on all these platforms.
Piccollo 2 days ago 1 reply      
Geee 2 days ago 0 replies      
1Password is still available without subscription.
maxxxxx 2 days ago 1 reply      
I use passpack.com.
narak 2 days ago 0 replies      
Password Safe + pwSafe ios and mac clients + Dropbox
tavish1 2 days ago 0 replies      
pass - passwordstore, syncthing on laptop and phone, and password manager and openkeychain on phone
chippy 2 days ago 2 replies      
For generating a quick and I imagine a reasonably secure password I use:

 date | md5sum

proactivesvcs 2 days ago 0 replies      
KeePass with a Yubikey for TOTP. Database and metadata is synced between devices via Syncthing.
jedisct1 2 days ago 0 replies      
Adam89 2 days ago 0 replies      
teddyqwerty 2 days ago 3 replies      
Ask HN: Which blogs / sites do you follow to keep up-to-date with devops?
14 points by rajeshmr  1 day ago   6 comments top 4
QuinnyPig 7 hours ago 0 replies      
I run https://lastweekinaws.com.

As a part of that, I follow a bunch of RSS feeds (keyword searches for AWS specific terms), most of the weekly newsletters mentioned below, the official AWS blogs (of which there are many), and a wide variety of folks on Twitter.

Slack teams are the OG-AWS slack team, and of course HangOps.

I will say I'm a bit leery of "keeping up with trends." I have an operational background; I like things to be a bit more baked before I put them into production. If I'm not the first person to hear about the next Kubernetes, that's okay with me.

twunde 15 hours ago 0 replies      
I've found Devops Weekly to be a good, well-rounded source of news: http://www.devopsweekly.com
Ask HN: What was your acquisition/acquihire/golden handcuffs offer?
17 points by throwawaydslkfg  2 days ago   1 comment top
Fej 1 day ago 0 replies      
This is going to be difficult to get answers to; if I remember correctly most of these acquisitions come with a non-disclosure clause.
Ask HN: What Linux diagnostic tools/commands do you use?
22 points by adampie  2 days ago   10 comments top 9
bennofs 2 days ago 0 replies      
strace - to see what a program is doing / where exactly something is failing if the error message is bad

ltrace - same as above, if strace is not enough

perf trace - if you don't know the exact process to strace upfront

https://github.com/brendangregg/perf-tools - to track disk accesses or exec calls

env LD_DEBUG=all - debugging dynamic linker issues

JosephRedfern 2 days ago 1 reply      
I guess it depends what I'm trying to debug, but one thing that seems to be missing from your wrapper is quick logfile inspection. Tailing the last n lines of syslog (or something more specific) is often a good starting point when diagnosing problems.

Perhaps something that performs basic connectivity tests might be useful, too -- pinging the router, an external IP (like, and a FQDN (like google.com) would be a good quick test of both internal connectivity, external connectivity, and DNS resolver.

irundebian 1 day ago 0 replies      
Have a look on this picture which maps subsystems to tools: http://www.brendangregg.com/linuxperf.html
lobster_johnson 2 days ago 0 replies      
Per-process I/O and network metrics are super important. I usually use pidstat (-d flag gives you I/O) for this, or read data from /proc directly.
deckarep 1 day ago 0 replies      
htop, iftop, ngrep, tcpdump, lsof, strace, wireshark, nc, telnet, ping, netstat, ps, grep, awk, pv, middleman, curl, jq, mitmproxy, tail, tr....

Okay, ok pretty much all of them. :)

amingilani 1 day ago 0 replies      
top, ps aux, which, find, ls, rm, cd, cat, echo, touch, pbcopy, ssh

That's pretty much it, otherwise I have a whole lot of cli tools too. Things like git, tmux, mosh, rails.. but I guess they don't count.

assafmo 1 day ago 0 replies      
mostly htop, iotop, pv -d...

EDIT: ... curl, jq, cat, less, grep, awk, lynx, watch, parallel, xargs, head, tail, sqlite3, rsync, scp...

b0n40 1 day ago 0 replies      
nc, tcpdump, ethtool, htop
gricardo99 1 day ago 0 replies      




Ask HN: Why is Bluetooth so unreliable?
344 points by whitepoplar  5 days ago   260 comments top 34
bjt2n3904 5 days ago 9 replies      
This isn't the first time I've talked on this. I've had some experience with bluetooth on Linux, and as a radio guy. The answer is there are problems from Layer 1 to Layer 7, needless complexity, and design by committee.

Bluetooth is an EXTREMELY complex radio protocol on Layer 1. It's like a mating dance between scorpions in the middle of a freeway. High chance something gets messed up.

Layer 1 keeps drastically changing too. Bluetooth 1 and 2 use completely different modulations, and are not backwards compatible. Bluetooth 3 simply was an extension to 2. "Let's agree over Bluetooth 2.0 to use WiFi instead." Bluetooth 4, while much simpler, uses an entirely different scheme.

Instead of a "general purpose" wireless network like WiFi, Bluetooth tried to be application specific. Except the only profiles everyone wants are mice, wireless audio, and fitness trackers. If you look at the application layer spec, it reeks of design by committee. Everyone haphazardly jammed their pet projects together, and there are redundant and vestigial parts everywhere.

The Linux side of BlueZ is abysmal. Honestly, I don't even know how anyone does anything with Bluetooth on Linux besides a mouse and keyboard. And barely even that.

As much as I hate on the protocol, the Layer 1 spec is truly ahead of it's time, in some areas. Watching two radios frequency hop, and negotiate to avoid a congested wifi channel was unreal.

Duhck 5 days ago 4 replies      
I've spent the better half of 3 years building products on the 2.4ghz spectrum (WiFi and BLE).

Most of the issues in this thread are related to poor hardware design more than a crowded spectrum. While the spectrum is in fact crowded in metropolitan areas, most Bluetooth communication doesn't require much bandwidth and can handle error prone areas with ease.

While the frequency hopping helps a ton on BL (and WiFi for that matter), the issues people outlined are due to:

1) Shitty firmware2) Shitty hardware

Antenna design is black magic and only a few firms in the US do it well. It took us almost 10 months to fully design and test our antenna assembly(s) with a very capable third party firm.

It took dozens of trips to a test chamber, a dozen computer simulations that take a day to run, and PCB samples that take days to verify. They have to be tuned every time copper or mechanical parts move as well.

It's a real pain and most Bluetooth products use garbage chip antennas and baluns or reference designs for antennas. This increases the sensitivity to failure and provides a generally shitty experience.

Most of your product interactions around bluetooth are budget products connected on one side of the equation (e.g. a $50 bluetooth headset). So despite how capable your Mac or iPhone is, if you have a garbage headset on the other side with poor antenna design, it'll be a disaster of an experience.

IgorPartola 5 days ago 5 replies      
This is a daily goddamn struggle for me. My Macbook Pro routinely forgets about my Apple trackpad, and the only thing that fixes it is restarting the laptop. The sound system on the laptop often selects the wrong mic for the input when a BT headset is connected. My iPhone keeps switching between headset and internal speaker/mic when on a call. Pairing the same device to multiple hosts (laptop and phone) is like birthing a hedgehog backwards. And let's not forget where you try to initiate pairing from a laptop or phone instead of the device. Why even provide the damn buttons to do it if they never work?
drewg123 5 days ago 9 replies      
For me, the biggest problem with BT is that BT audio is almost entirely unbuffered. I wear a set of BT headphones connected to a fitness watch (Polar M600) when running. When the BT connection from the watch to the headphones is briefly blocked by part of my sweaty body (think arm movements when running), the BT signal is interrupted and the music cuts in and out with every stride. If BT audio could be buffered for 15-20 seconds, this would not be a problem.
api_or_ipa 5 days ago 3 replies      
I used to absolutely abhor BT, but in the past few years it seems to have gotten really, really good about picking up, and maintaining a decent connection. Since then, I've picked up BT headphones, BT keyboard + mouse (Apple), and a nifty little waterproof BT speaker. Now, the only issue I sometimes have is when I want to connect to a new host device. Other than that, BT has been really nice to me.
blumomo 5 days ago 0 replies      
For programmers using Bluetooth Low Energy (BLE 4.0) on Linux/BlueZ, we're working on this handy BLE GATT library for Python: https://github.com/getsenic/gatt-pythonBlueZ/GATT is very stable to our experience and supports most functions such as BLE device discovery, listing services and characteristics, reading/writing/subscribing values from/to characteristics.
evilduck 5 days ago 0 replies      
I have a lot of gear in the Apple ecosystem that uses Bluetooth and I don't consider it unreliable at all. I use at least 6 different Bluetooth devices all day, every day (MBP, keyboard, trackpad, iPhone, Watch, Airpods, with additional car pairing, portable speaker and iPad pairings) in close proximity to a bunch of other developers behaving similarly. Looking around I can count at least 40 BT devices in active use around the office and I would still characterize my Bluetooth devices as more reliable than any wifi AP I've ever used.
ComputerGuru 5 days ago 0 replies      
A big part of the reason "Bluetooth" is unreliable is that there is no one "Bluetooth." Each manufacturer's implementation differs in strength and weakness, and depending on the potentially shoddy chips in the devices you are connecting to, a different Bluetooth standard will be used.

I have Bluetooth devices years old that I've never had problems with, and others that are a constant nightmare. The software stack behind the Bluetooth is also a major component in the reliability question.

AceyMan 5 days ago 0 replies      
Disclaimer: non-technical anecdotal evidence here

I had a colleague for a time who's dad was a hardware engineer with Toshiba & worked with/on their part of the specification Working Group.

His pop said that the whole BT stack was unambiguously a steaming pile of poo from the get-go, and it was nearly miraculous it functioned as well as it did.

At that I had to chuckle, seeing how I'd wager that each of us have had enough woggy experiences with the tech to agree with the point he made so plainly.

But I do love the chosen icon & the history behind it, vi-a-vi the name ("Bluetooth"), so it's not all bad <wink>. ---

this was around 2010 or so, to add some context wrt the relevant timeline(s).

synaesthesisx 5 days ago 2 replies      
Not 100% sure on this, but I believe devices utilizing Apple's W1 chip use a combination of Bluetooth + WiFi (WiFi for the initial handshake upon connecting probably or something like that). If anyone's ever used AirPods it's amazing how reliable they are compared to other bluetooth headsets.
Spooky23 5 days ago 2 replies      
Is it? I'm a pretty heavy user if Bluetooth in a few different use cases and it's pretty reliable for me.

Best way to improve reliability is to avoid dodgy or counterfeit radios in crappy electronics.

js2 5 days ago 3 replies      
The last few years, I have not had trouble with BT, but maybe it's because I simplified my use cases to ones which work after early failures. Here's what works for me and never fails:

- Macbook to Apple bluetooth mouse

- iPhone 6s to late model Mazda infotainment system

- iPhone 6s BTLE connection to Garmin Forerunner watch

jbg_ 5 days ago 0 replies      
I know this is a little tangential, but this brought some simmering anger back to the surface. Just today I was trying to communicate with a bluetooth device that provides a serial channel.

Back in the day I used to just run "rfcomm bind <mac-address> <channel>". But it turns out BlueZ decided to deprecate (read: stop building by default) the rfcomm command in favour of... wait for it... a barely-documented D-Bus interface.

How much do you have to hate your users before you decide to take away a useful, functional executable and replace it with an unspecified interface over D-Bus that requires hours of research to use rather than 30 seconds of reading a manpage?

jimmies 5 days ago 2 replies      
I have a Linux computer (Dell Chromebook 13) connected to the Microsoft Mouse 3600 Bluetooth (BLE 4?) and it was rock solid. The mouse picks up immediately whenever the computer is on. It was almost miraculous how well it works. The mouse is really quite darn responsive too.

That is, I use the cutting edge Linux distribution (Ubuntu 17.10) -- it was pretty darn painful even on 17.04. I have another keyboard that is on Bluetooth 3.0 that fucking disconnects every other day.

So YMMV - I think BLE mice and keyboards are much better in terms of 'just works' unless you pair them with a whole bunch of devices.

gjvc 5 days ago 1 reply      
From an experiential view, I say "crowded spectrum" My bluetooth keyboard takes ages to associate at work (which is close to a mainline rail station), but at home in the relative country, it works smoothly.
linsomniac 5 days ago 2 replies      
I gave up on Bluetooth at home around a year ago. Not sure what it is, but I'd pretty much have to put my phone right next to the bluetooth speaker for it it work reliably. Might as well use a cable.

I had high hopes for Google Chromecast Audio for my music at work and at home. Probably my fault for jinxing myself by asking "What could possibly be worse than Bluetooth?" Chromecast Audio has definitively answered that.

For one thing, you can't limit who can interact with the Chromecast. Anyone on the network can see it. At work, my music would usually pause ~4 times a day as someone else's phone would see it and connect to it. I'd have to set up a new wifi network that only I could use to fix this. Since I only listen to music a few hours a day, that's pretty frequent.

It also gets confused if I leave work and then try to use Google Play Music elsewhere: my Google Home in the bathroom will play a song and then stop, I think because "google play is being used on another device", but it doesn't tell you that.

Maybe I should just go back to using something like a Raspberry Pi with access to my music library, it still is mostly songs I have the CDs for and ripped, though I've added probably 50-100 songs over the last year on Google Play, my 600 CDs I have all in FLACs.

FRex 5 days ago 0 replies      
Oh wow. And I through it's reliable. I used it only a few times on smartphones and laptops (I like my mice and keyboard with cables) but I still remember what a big deal it was compared to infrared and how mobile phones in early 2000s would lose connection and the only sure way to use IR was putting them next to each other on a flat table with the IR thingies of their physically touching(!).

That makes me a little less excited about my plans of getting Dual Shock 4 for my PC for gaming.

howard941 5 days ago 0 replies      
I switched from a bluetooth dongle of unknown provenance to a more powerful Zoom (brand) class 1 dongle and hung it from a usb cable off of a lighting fixture in my home office. I get complete coverage to a Jabra headset of a rather large screened in porch despite having to penetrate my pudding head, two interior walls, and one exterior wall. The class 2 dongle barely worked outside.
kahlonel 5 days ago 0 replies      
I'll just leave here that the "official" linux bluetooth stack (i.e. BlueZ) has dogshit documentation.
bhouston 5 days ago 2 replies      
I never have Bluetooth issues in my Rav4 between any of my phones (ZTE, OnePlus), it is perfect always. I can not emphasize enough how amazing it is.

My and my wife's Fitbit have constant Bluetooth issues to our phones. This is completely and utterly annoying.

Driver related? Not sure.

thewhitetulip 4 days ago 0 replies      
Despite multiple apps of the likes of shareit, I find bluetooth to be the only mechanism of data transfer that just works. SHareit and the likes of it get new versions which break on my Android 7 for each upgrade and it is a PITA to get it working for different android versions, for some reason it does not show my device on a moto phone and I have to use the hacks like get a file from the other device to my device and then send something on the established connection.

but there is one thing, bluetooth is not useful if the file is big.

jonbarker 5 days ago 5 replies      
I would buy a wireless audio speaker that uses NFC instead of bluetooth to connect to Android or iPhone. You would have to set the phone on the device but that would be a small price to pay if the connection were more reliable.
airbreather 2 days ago 0 replies      
Plantronics seem to do it substantially better than anyone else somehow.
nthcolumn 5 days ago 0 replies      
I have nothing to add only 'yes me too my how I have suffered', the countless crappy bluetooth devices I have connected and disconnected and hours and hours I have wasted trying to get them paired with various linux boxes, nearly all in short order choosing death rather than do my bidding. I am looking at one right now currently unconnected. 'Dummy device'. Why indeed.
gargravarr 5 days ago 1 reply      
Part of the issue is that bluetooth as a whole is nothing more than a wireless serial connection. It's the various protocols built on top of it that determine its stability. The Bluetooth SIG only really control the pairing between the two devices, a low layer. You're hoping that the company you buy stuff from has implemented the protocol correctly, over which the SIG has no control.
baybal2 5 days ago 0 replies      
1. fragile encoding schemes

2. fragile modulation techniques (uwb would've been a "final solution" to the problem, but died to patent trolls)

3. interference from wifi (try using bt mouse while downloading an hd movie)

4. because of three different "wire protocols"

But the upside is that BT super cheap to implement, and thus ubiquitous

jdlyga 5 days ago 0 replies      
I've always had trouble with bluetooth devices until I got AirPods. Whatever bluetooth setup they're using is very reliable. I use them with my phone, windows computer, ubuntu work machine, and I rarely ever have connection issues.
80211 5 days ago 0 replies      
I learned a lot about Bluetooth with an Ubertooth Bluetooth dongle. It also let me realize how many security issues (side channel leaks, especially) exist that can't be easily fixed.
moonbug22 5 days ago 1 reply      
You only need to look at the page count of the specs to know why.
digi_owl 5 days ago 0 replies      
I would try eliminating Bluez5 and Pulseaudio first...
linuxlizard 5 days ago 8 replies      
Because it's not as popular as WiFi or Ethernet or USB. It hasn't had the decades of hard core, hard knocks field usage of WiFi/Ethernet/USB. So the chipsets are less robust to errors, are less sensitive to highly noisy environments. The drivers aren't as battle tested as the other connectivity.

WiFi in its initial days (802.11b) reminds me of bluetooth right now. Quirky, bad tools, weird errors. But WiFi caught on and manufacturers started throwing $B at R&D for better chips and better drivers for those chips.

Bluetooth just has a problem with scale.

mchannon 5 days ago 3 replies      
Simple- it inhabits the same band almost everything else inhabits- 2.4GHz. To an extent, the reason Bluetooth is unreliable is the same reason most Wifi is unreliable in crowded areas. There's a lot of appliances that use that bandwidth over incompatible standards.

Even worse are the "spark" kind of 2.4GHz appliances that don't play nice, like wireless camera systems and baby monitors. If your strong-signal wifi or bluetooth keeps dropping, it's far more likely to be one of those at fault than anything else.

rikkus 5 days ago 1 reply      
As much as I dislike proprietary protocols, I'd be greatly in favour of Apple deciding to make a replacement for Bluetooth that works with all their products - and Just Works. It'd be no use to me, as my only Apple product currently is an iPhone, but if I saw that Appletooth Just Worked, I'd be looking at diving (back) into their ecosystem.

I know some people are saying Bluetooth works perfectly between their Apple products, but plenty of people are saying it doesn't, too.

gdulli 5 days ago 2 replies      
My company bought me a $150 pair of noise canceling headphones last year, it was my first experience with Bluetooth. After a month I was back to using the $10 earphones that I've had for over 10 years. It turns out reliability and convenience was more important than blocking noise.

To be fair there were problems other than Bluetooth. The headphones were trying to be smart, if they sensed you taking them off they'd pause the music for you. Except it didn't always work so instead of pausing the music when I took off the headphones, which is ingrained and reflexive and automatic and no trouble at all, now I had to pay attention every time to whether the auto-pause worked and then either pause myself or not.

And sometimes I'd adjust the headphones slightly to scratch my ear or something and the music would pause. Sigh.

Am I seeing corruption on Google Play? How's this possible legal?
23 points by vitovalov  1 day ago   21 comments top 8
dukoid 1 day ago 2 replies      
One possible explanation could be that the ratings count is updated immediately while the install count is updated at a slower rate...
vitovalov 1 day ago 0 replies      
Sharing a gif that will serve as a proof in case they do some changes to this app page. https://twitter.com/vitovalov/status/886563706494218240

Apart from that, I continue monitoring, and the numbers of ratings keep growing. Also I noticed something strange when you refresh a couple of times the play store page. https://media.giphy.com/media/3ohryBbqtYeAkomS3u/giphy.gifIt appears to be two different counts of ratings? Crazy...

xupybd 1 day ago 0 replies      
DamonHD 1 day ago 3 replies      
Aren't there farms of mobiles on racks in Thai and Chinese houses set up specifically to game those ratings? (Remembering some arrests within the last month or so...)
tluyben2 1 day ago 1 reply      
I don't think the install number is accurate or maybe based on something else than actual, physical installs? Also if you install / deinstall does that count as install (it should imho) or maybe not?

i'm not sure how easy it is to farm Play Store accounts; maybe someone knows? You need gmail which then turns into a Play store account right?

Does install count per device and how far does Google go in limiting that?

pbhjpbhj 1 day ago 2 replies      
Is installs the current number as opposed to the total over time? That would allow people to install, rank, then later remove, and so make sense of the statistic.

Another option is that people get to rank each device install but only count as being one (person with an) install? That would allow for such "corruption".

la_fayette 1 day ago 0 replies      
download numbers are absolute, independent of any version or uninstalls of the app. the store updates the number with a lag. the ratings can be done only after download and are shown faster.
vitovalov 1 day ago 0 replies      
Also the time will show if this is true. If tomorrow the installs count doesn't grow to 1000-5000 or at least 100-500, it's cheating for sure.
Ask HN: Does anyone use CGI scripts anymore?
3 points by kaishiro  1 day ago   4 comments top 4
twobyfour 14 hours ago 0 replies      
Oh, wow, there's a flashback. Nope, haven't used CGI in almost exactly a decade.

We used to use them for formmail scripts and collecting email addresses for mailing lists on otherwise static websites. Once I convinced that employer to move our clients to hosting that supported PHP (yes, PHP - this was 2006-2007 after all), and to gradually migrate them onto content management systems, CGI became unnecessary.

stevekemp 15 hours ago 0 replies      
Yes. I write a lot of scripts using the Perl CGI::Application framework, and that uses FastCGI to boot up.

It might not be sexy, but it is easy to test, and allows me to use a wide array of Perl modules in my codebase.

LinuxBender 23 hours ago 0 replies      
I use it for my own sites, mostly for file uploading, forums, etc... We use them at work in simple cases where writing something in java or C would have been overkill. CGI will be around for a very long time.
technion 22 hours ago 0 replies      
cPanel still puts this there by default - your hosting provider may not even be aware of it in a modern environment.
       cached 18 July 2017 04:05:01 GMT