hacker news with inline top comments    .. more ..    9 Mar 2016 Ask
home   ask   best   2 years ago   
Ask HN: Moving Out of Silicon Valley because of housing? Where to?
166 points by Apocryphon  18 hours ago   296 comments top 62
agentgt 14 hours ago 4 replies      
I'm particularly biased as I went to school at GaTech but Atlanta has greatly improved over the last decade or so.

It obviously has a completely different social, ethnic and economic diversity than SF does as well as being far far more cost effective. It also has real BBQ as well as being not that far from Miami (my favorite city but not good to live/work in).

I would recommend Boston (where I currently live) except that it has brutal weather, fairly caustic hospitality to new comers and is not that much cheaper. Its great for college kids but no so much for early 30 somethings hoping to own something some day.

If your are going to live in or near Boston I highly recommend Waltham, MA where I currently live. Waltham is not as cool as parts of Boston or Cambridge but its a hell of lot cheaper. Waltham has so many things to do. I can fish on the Charles in the afternoon, walk down the river and watch a movie in the local theater and then hit up the massive bar and restaurant scene all in the same city with out hopping on the T or car.

spillihp 17 hours ago 5 replies      
Want to put in a quick plug for Sacramento. Great quality of life here, generally great weather (sometimes a little hot in summer, but sunny most of the year), affordable housing with rents between $500 and $1,000 (and affordable to buy a house - still good places available for under $300k), nice neighborhoods, great amenities, bars, restaurants, all that. Good access to awesome outdoors. And really easy to get to the Bay if need be. By Amtrak and BART it takes me 2 hours 12 min to get from downtown Sac to Downtown SF - regardless of traffic (and you can easily work - or drink a beer - on the train). Given how much more affordable it is I am really surprised more folks don't set up shop out here and just head into the bay on occasion / when need be.
relaunched 18 hours ago 6 replies      
Minneapolis. - Affordable, great culture / food, low unemployment, tons of public companies, rapidly growing startup scene (100 meetup groups)...If you have kids it gets even better. The suburbs are amazing, with great parks, schools, etc. Work life balance is the norm.
bkjelden 17 hours ago 3 replies      
Seattle's housing costs are definitely rising but Washington's lack of an income tax is a boon for software engineers. Also, many of the big players in tech will pay within 10-20% of their bay area total comp packages in Seattle, so your take home pay might be almost the same, but of course your dollar is going to go a lot further.

I ran some numbers comparing Seattle, Denver, and Minneapolis, and found the descending housing prices and ascending state income taxes more or less cancelled each other out in my situation. Of course everyone's circumstances are a little different, so this may not be true for everyone.

Seattle definitely seemed to have the best opportunities at the big players in tech outside of SF/SV.

spaceotter 20 minutes ago 0 replies      
I live in New Orleans and really div there tech scene. The cost of living is great. The best thing is probably the culture. It's not like any other place I've ever lived and you'll never lack for festivals or parades.
WhatsName 15 hours ago 1 reply      
Vienna (Austria). Great living standard, lifestyle and housing prices are growing, but regulated and mostly affordable.Fast growing startup and hacker scene, backed and supported not only by accelerators, but also by ongoing campaigns to support innovators and founders.

"Vienna named world's top city for quality of life" - http://www.theguardian.com/business/2016/feb/23/vienna-named...

theli0nheart 16 hours ago 1 reply      
My wife and I moved to Austin from LA about 3 years ago, and haven't looked back. Prices are climbing here (as they are everywhere else), but since the city is growing, the number of desirable areas continues to increase. I'd highly recommend coming here. The city has a very laid-back culture, and despite being relatively large, still isn't really overwhelming like other big cities can be.

Our key reasons for coming here:

 1. Cost of living. 2. No state income tax. 3. Laid-back culture. 4. Warm weather.*
Plus, you can't beat the BBQ.

* I feel required to add a qualifier to this bullet point, since so many people cite 100F summer days as a reason to not move here. I grew up in Miami, where it's humid to a fault, and 80 days there are about as uncomfortable as 100+ in Austin. The heat really isn't that bad.

mikekij 14 hours ago 5 replies      
San Diego is awesome. The cost of living is probably 30% less than the bay area (I rent a 4 bedroom single family house for $2495), I live 3 miles from the beach, and there are a fair number of tech companies in the area, focusing primarily on healthcare and defense. And I love the outdoor activity opportunities. Direct flights to SFO are about $140 round trip, or less.
djb_hackernews 17 hours ago 2 replies      
Boston/Cambridge is hot but there has always been a strong tech scene here so it's not so much up and coming. Cambridge is on top of their game, Boston is doing really well despite its city government. The issue with the Boston area is your COL is about the same as SF but your standard of living is a bit lower due to the usual culprits (NIMBY, poor govt leadership, New England conservatism, etc) and just plainly the housing stock is old. If I had to guess I'd guess your money actually goes further in SF than in Boston because you get newer construction, with bigger floor plans and more modern amenities.
seancoleman 17 hours ago 7 replies      
Phoenix is often not included when discussing tech cities, and I think it's a shame. I've lived here my entire life and have seen the startup and tech scenes evolve and mature having started 2 companies here. Just in the past few years, the number of quality startups and investments have soared and I believe we're at the inflection point that will make Phoenix equitable to SV.

We have a low cost of living, affordable housing (I bought my first house at 21 and I wasn't rich) and the weather is amazing.

If you ever check out Phoenix, I'm happy to show you around.

Edit: It's even an easy transition. We also call this the valley (of the sun)!

jason_slack 14 hours ago 2 replies      
I moved from Cupertino to very upstate New York about 15 months ago.

I was able to buy a house, on a lake, forest on all sides of me and I spent less than $200,000 to buy the house, move, furnish a new place and remodel a bit to my liking.

No startup scene here. For me, it was the slower pace of life, peace and quiet and more time to work on my personal goals.

cbanek 17 hours ago 3 replies      
I just moved out of California to Las Vegas because of the housing prices. Las Vegas cost of living is easily half that of LA/SF, and there's no income taxes. This can especially be a boon if you're leaving a company where you're exercising ISO options (you can exercise once you move to Nevada, and not pay CA AMT tax).

I wouldn't say there's a lot of tech jobs, but there are some, and if you're working remote, it's a great place with a lot of 24/7 life.

hexadec0079 17 hours ago 3 replies      
Repping Raleigh here. There is a decent startup scene and housing is very reasonable. $1200 for a 2 bed/ 2 bath apartment with garage that is about 10 minutes from my office and less than 20 minutes to downtown.

Weather is nice and there are plenty of firms moving to the area. The only downside is that traffic is increasing, but there is enough sprawl it is not a huge issue. Startups are coming out of major universities and office space and co-work spaces abound. Aside from the hot months and increasing traffic, it is pretty great so far.

mjfern 14 hours ago 1 reply      
I'm in Raleigh/Durham, NC. You have great universities here (UNC, Duke, NC State, etc.), nice weather with 4 seasons, blossoming startup culture, Research Triangle Park with Red Hat, SAS, and a variety of other big tech companies with a significant presence, and relatively inexpensive housing! I moved here 3 years ago from the Bay area for quality of life reasons. It's worth a serious look. :)
atomic77 16 hours ago 2 replies      
In Canada, Montreal is a great city with reasonable living costs and a decent tech scene (esp game development). Climate will probably scare away anyone not originally from the east coast or midwest though.

Toronto and Vancouver, despite having some pluses, unfortunately can't be recommended to anyone that cares about cost of housing.

HelloMcFly 16 hours ago 4 replies      
Well, I'll give a plug for a different city: Atlanta. My wife and I moved from Atlanta to Seattle a few years back, and while we love the PNW we're definitely looking forward to moving back this summer. Seattle is wonderful, but the traffic has gotten noticeably worse since we've been here, and housing just never worked for us.

Atlanta has a lot of opportunity, including in the tech space. It's no Seattle or SF, obviously, but it's a bit of a job oasis on the south. I also personally feel like the city has about 5x the culture and character of either Seattle or SF (where my wife lived for awhile), but that's probably a preference on type of culture than absolute value of culture.

I'll miss all the craft brews of the PNW, but can't wait to be back near the heartland of BBQ.

ArtDev 17 hours ago 3 replies      
Bend, Oregon. Direct flights to and from West Coast hubs. Active startup scene. https://youtube.com/watch?v=KxhA2jopebQ

Bend has already been "discovered". However, there is still affordable housing and you can't beat the weather, beer scene and the outdoors here.

If you want to check it out, you can stay in my awesome big house when we are traveling: https://www.airbnb.com/rooms/7497695

edwhitesell 17 hours ago 2 replies      
My wife and I lived in Dallas for 5 years, then spent 18 months in the Seattle area before deciding to move back to Dallas. Cost of living was _the_ deciding factor.

Tech jobs are very easy to come by and the tech scene in Dallas has been steadily growing over the last 7+ years.

Vnjjkkll 18 hours ago 3 replies      
NYC. Its still expensive obviously but more diverse. Not a mono-culture. Cold/long winters are not much fun. But there are nicer small classic american town in NY and Long Island, which can be affordable. Train commute is ok if you can work remote a couple days per week and get some work done on the trains. Beaches are close, skiing upstate is decent. Lots of opportunity in NYC/Brooklyn. A very nice home (4 bedroom, good schools, 1 acre, pretty area) can be had for under $1M.
chris_va 18 hours ago 5 replies      
We just moved to Seattle from SF. Highly recommended, but as you say more expensive than Portland (still 1/2 the price of the bay area). Cost follows opportunity, and it is harder to find a tech scene in Portland.

NYC is a great place to live (have done so), and I would pick it over Seattle (at least for a year or two) if you don't have kids, are young, and can afford it.

Chicago is great, less tech than NYC/Seattle, so I would set up a job before moving.

I would skip Denver, but I haven't spent as much time there. The city just felt uninteresting. I liked Boulder, but it is a small town.

brianwawok 18 hours ago 4 replies      
I am biased but I liked Chicago. You can get a good house for a decent price. If you want to raise a family though, inside the city schools suck - you have to play a lottery or try to test into a good school or pay for private.

That said you won't find startup jobs like SF, a lot of the top paying jobs like NYC are in finance.

codecamper 13 hours ago 2 replies      
Maybe everyone leaving should just agree to locate somewhere that isn't some major city.

We can all go there & start a new tech scene. How about Wyoming? Or Montana? Utah?

What I mean is we should go somewhere beautiful. Somewhere we can take walks outdoors in between coding sprints.

Why walks? It's been scientifically shown that walking helps you remember things better. Also sitting too long shortens your lifespan.

Just some thoughts.

Siimteller 13 hours ago 0 replies      
Guys at teleport.org are solving exactly that problem by pooling tens and tens of data sources for living costs, transportation, crime, recreation etc. Check them out.
jerf 17 hours ago 2 replies      
As you point out, there's a lot of options; you've only really even scratched the surface. Some guidance on your interests (both professional and recreational/social), skills, and desires would be helpful.

I sometimes wonder, do people think that the rule is that you have to post an Ask HN, then you're not allowed to interact? Go ahead, interact!

For that matter, if you've got a similar question but you're not the OP, post your own answers to my questions and see what develops.

mcone 17 hours ago 1 reply      
Pittsburgh. Housing prices are ~20% below the national average and we have a growing technology sector with CMU and offices for Google, Apple, and Uber employees. Some startups here, like Duolingo. This is technically the rust belt, but you can still find "big city" amenities with a small town feel.
Balgair 17 hours ago 1 reply      
Make sure to skip Denver. Nothing but stoners and Peyton fans. Terrible place to live.
feathj 14 hours ago 0 replies      
Salt Lake City. We have a ton of tech money being dumped into our state, and we just don't have enough engineers to fill seats. Low cost of living, lots of outdoor activities. I work < 20 mins away from world class ski resorts.
cscharenberg 12 hours ago 0 replies      
Salt Lake City. Tons of jobs with expanding companies, both big old ones and hungry new ones. Beautiful scenery, low cost of living, pleasant people.

I just moved here 4 months ago and it's great. If you like hiking, national parks, outdoorsy stuff, Utah is almost unmatched for beauty and nice climate.

jlaurend 12 hours ago 0 replies      
Been in Milwaukee for the past year and I have to say -- Milwaukee is underrated. We came from Boston to do an accelerator, gener8tor, in Madison (also a great city worth looking at) and ended up here.

* Cost of living is low and quality of life is high.* People know how to have a good time and there's always something to do (sports are huge - Packers, Brewers, Bucks, college sports, etc).* Summer is AMAZING. There's an incredible number of festivals going on (with summerfest at the forefront).* Commutes are super short.* Lake Michigan is awesome.* Chicago is only 75 minutes away by train or car.* The startup scene is on the rise.

The downsides are:

* Cold winters (comparable to Boston with less snow but colder winds).* While not necessary, a car is desirable.* The tech scene is relatively small. (But growing!)

nhumrich 10 hours ago 1 reply      
There are a lot of startups in Salt Lake, UT. Billboards everywhere looking for devs. I really am surprised it never gets mentioned on posts like this. Salt lake area cost if living is about the same as Austin I believe l, but based on the fact that it isn't as well known that it is truly a tech hub, cost probably won't rise nearly as quickly as the other places.It has recently been called *Silicon Slopes" by Google (when they installed Google fiber), if that's not enough proof idk what is. Also Utah might be the first state to have Google fiber in two different cities. (Provo, and talk of Salt lake)
kevan_ 16 hours ago 1 reply      
Hijacking this a bit: for you folks who've relocated, how did you handle getting connected to the tech community in your new city, and eventually finding a job there? Did you find something beforehand (if so, how), or just start interviewing once you're on the ground and established?

I've contemplated this before, and make a point to check out jobs in other cities when I'm job hunting, but it's hard to ignore the local recruiters who just send me local jobs out of the blue so I always end up staying where I am. I'm currently in LA, and am somewhat interested in relocating to somewhere with a similar/warmer climate, lower cost of housing, equivalent/better outdoor recreation opportunities, and not-awful startup/software scene. I've considered Denver, SLC, Bend, and Phoenix pretty strongly, but haven't found anything that lines up yet.

bazqux2 12 hours ago 2 replies      
Panama City Panama. Zero tax on foreign income. If you continue contracting for US companies all of your income will be foreign.

It makes a huge difference. I paid over 40% in tax in SF. Tons of tech people are doing it as they can more easily work remote and are already competing on a global stage. I've joined a share house of foreign tech workers who all doing the same thing for the same reasons. It is in one of the luxury apartment complexes.

* Note: Americans will still own the IRS money if they earn more than $100K. It's still worth doing. I'm not an American.

CodexArcanum 8 hours ago 0 replies      
I've been living in New Orleans for the last year, and I'd have to say it's been great. NOLA is a blossoming place, with lots of startups and a rapidly growing tech scene. The culture is incredible, full of its own unique charms, delicious food, and vibrant music.

I don't know, maybe it's not for everyone, but I love it!

LogicX 8 hours ago 0 replies      
Myrtle Beach, SC.

Unlikely place.

Cost of Living is ridiculously low, right by the ocean, big city amenities, due to the short summer tourist season.Great weather, inexpensive flights to Northeastern Cities. I outline some of this on the (now out of date) http://WhyNotTheBeach.com site.

There's no tech scene to speak of. So you have to be a remote worker to get the value. I maintain a list of remote job opportunities: http://LX.tc/positions

Interestingly it's growing organically due to people having their parents retire here. And then either needing to move here to take care of them, or just discovering the city when coming to visit.

ChuckMcM 12 hours ago 1 reply      
I've spent some time in Denver and I could easily see moving there full time from the SF Bay Area. That said, I like camping and hiking in my spare time which Denver has in abundance, and it has Sparkfun just outside of Boulder for your tech toys urges.

Denver is more of a burgers and beer town from a culinary perspective, but it has lots of young people and downtown is very walkable. Also, unlike the bay area, they have a pretty functional transit system. You could totally live there without a car.

nether 14 hours ago 0 replies      
2015 article comparing programmer salaries in various major cities adjusted for taxes and cost of living: http://tgeonetta.com/cost-of-living-vs-salary-best-cities-fo.... Austin comes out on top.
kaishiro 14 hours ago 1 reply      
I'm from the US, down here in Melbourne, via Shanghai, via Boston, via NY. Had no idea what a vibrant tech scene they had on my way down. Envato, Fastmail, and Atlassian give the city some cachet. I contract primarily with US agencies, and if that's the case you just need to set the tone early on with regard to availability. Neat city though.
cableshaft 16 hours ago 1 reply      
I've been fighting to stay in Chicago and it's been difficult to get the next job when you're between jobs quickly (lots of recruiters that are really good at wasting your time here), and it's even harder to find advertised salary ranges where you want them to be (tech salaries are really depressed here compared to elsewhere).

I've been trying to stay here because it took me forever (as an introvert) to build a strong social circle and those people support me a lot in my creative endeavors, so I'm disinclined to leave and have to start all over again elsewhere.

The food here is excellent, though. With the exception of seafood (which tastes fine, but not nearly as fresh as on the Bay), just about every cuisine you can think of has a quality representative or two nearby (even in the suburbs, where I live).

The suburbs also has plenty of forest preserves to explore, if you're into hiking and trees (which I am also).

Housing prices are reasonable, depending on where you look. You can get a good home for ~$200k-230k in the suburbs if you keep an eye on the market and you're quick to make an offer.

wprapido 14 hours ago 1 reply      
my vote goes to denver! affordable, laid back, socially liberal, safe, no huge social gap like in SF, very friendly people, great outdoors, growing tech startup ecosystem
linuxlizard 17 hours ago 1 reply      
Boise has some good, small tech firms. Great area for quality of life.
eorge_g 18 hours ago 1 reply      
Here's an HBR article talking about New Orleans push to become a relevant hub and the difficulties of stealing mindshare from "the big three":


gravypod 13 hours ago 2 replies      
If you have enough money to start working remotely there are a few places that I want to move to.

 - Alaska: Pay you to stay, land is cheap, I like the cold. - PA: Land is cheap, I like the cold, next to Philadelphia - Poland: Everything is cheap: 1 z is 0.25 USD, great food and amazing nightlife. - India: 1 USD ~= 70 rupies, amazing food and culture
Every one of these places has its pros and cons, but they have all relatively nominal crime rates as well as some really cool food and people.

Edit: Forgot to mention Italy, but then you have to deal with the EU and VAT.

Alex3917 14 hours ago 0 replies      
New York isn't that expensive if you're willing to commute 45 min to work. It's only really bad if you want to live in a trendy apartment in a trendy neighborhood, otherwise it's very affordable.
brianbreslin 12 hours ago 0 replies      
So what are your criteria? Do you have a job you'll be working remotely from? Looking for a new job?

I would chose in order of preference- Quality of life factors (life is about living, not about working)- Cost to income ratio - How interesting the place is- Local job market- How accessible the place is (airline hubs rule, travel the world)

I'm happy to answer any questions regarding Miami, or @afontaine can as well. However I don't know if Miami is a good fit (I'm clearly biased)

SeaDude 7 hours ago 0 replies      
Although everyone mentioned the cities covered in this resource, i'm sure vice'll create more soon: http://www.vice.com/cityguides

maybe useful

tnash 12 hours ago 0 replies      
Columbus, OH is pretty great. The Dublin Entrepreneurial Center has cheap office space and access to the Metro Data Center on the same floor. There are a couple nice co-working spots too like 400 West Rich.

We have a burgeoning food scene that gets better every year. Cost of living is pretty cheap, we have an NHL team (not to mention NCAA powerhouse OSU), new apartments are going up seemingly everywhere, and Amazon's building a data center here.

wpeterson 13 hours ago 1 reply      
I've been living in Mountain View for several years, but we're moving back to Boston in a month.

We can get a house 3x as large for 2/3 the cost and have a much better quality of life.

Osiris 12 hours ago 0 replies      
Denver/Boulder (Colorado) has a really strong technology and startup environment. There are some well-known technology companies based here.

In fact, Denver recently ranked as the #1 Best Places to Live[1]

[1] http://www.denverpost.com/news/ci_29585428/denver-no-1-u-s-n...

RIMR 13 hours ago 0 replies      
Move to Cleveland Ohio. Rent might as well be free.

Not a lot of good work or recreation, but you could buy a house for the same cost as a year's rent in SF.

peterarmstrong 17 hours ago 1 reply      
I've worked remotely for Silicon Valley companies from Victoria, Canada, and it's great, even though the startup scene is just in its infancy. Same time zone, housing isn't insane like the valley or like Vancouver, beautiful climate, good university, etc. The largest drawback is that once you're ready to do your own startup, VCs are all "Victoria? WTF? You can't build a real company there...", so you're stuck bootstrapping...
diiq 11 hours ago 1 reply      
Consider Michigan: both Detroit and Grand Rapids are affordable, tech-friendly, and pleasant to be in.
cyanbane 11 hours ago 0 replies      
Alpharetta, Ga (or Atlanta in general). It's great. Home prices are not terrible, taxes are not bad, great schools & people are friendly. Only real problem is traffic - staggered commutes and working from home can mitigate that.
MalcolmDiggs 17 hours ago 0 replies      
I moved from SF to LA, and then to NYC. All great places, but all very pricey.

If I was looking to keep costs down, I'd take a serious look at New Orleans. Obviously purchasing a house there might be riskier (since much of the city is below sea level), but they've got a burgeoning tech scene, lots of media companies, and the culture+food can't be beat.

fredgrott 17 hours ago 0 replies      
What one can find is that if you are in another state bordering a big city you often can get huge savings at least in the USA..

An example, work in Chicago but reside in NW Indiana..guess what a house costs in NW Indiana? $250k and with rentals at $900 I am sure you can figure out that in a few years the house is paid for in cash and no mortgage to speak of...

horv 10 hours ago 0 replies      
I haven't seen anyone specifically comment on Nashville so I figure I'll chime in and give you my $.02.

I did my undergrad at Vanderbilt in Nashville, moved to Mountain View for two years to work at Google and moved back a year ago after realizing living in California didn't work for me.

Pros:- No state income tax in Tennessee- Tons of stuff to do. There's way more than just Honky Tonks and country music. Professional football and hockey teams and a decent minor league baseball team. People go to the symphony and see shows at TPAC regularly. The Frist usually has interesting art exhibits, as does Cheekwood (also a botanical garden). If you prefer to be outdoors, there are plenty of places to hike, climb, kayak, etc. It might not be quite as striking as Yosemite or Marin, but the nature here is still quite beautiful.- Housing is cheap (relatively). A lot of people (short and long timers) have taken to complaining about housing prices recently, and to be fair they have gone up quite a bit from where they were. It's not as cheap as Chattanooga or other smaller cities but it's still _very_ affordable compared to California. I recently closed on a house just using money I saved from working in CA for my down payment.- Growing tech scene. It's really night and day even from when I graduated 3 years ago. Tons of meet ups and the community is really awesome. A growing number of companies - and the companies here tend to be more focused on actually growing a business instead of just hitting a valuation.- Food. Awesome restaurant scene. Obviously more BBQ and Southern focused though.- Friendly. People in Nashville are very friendly. I think this is immediately noticeable, but I enjoy having conversations with random people I run into. - Centrally located. They've added direct flights to the Bay Area recently, and you're a day's drive from a good chunk of the eastern half of the country (you can get to Chicago, Oklahoma City, New Orleans, Orlando, or Buffalo within a day's drive).

Cons:- Davidson County schools aren't great. Lots of people with kids live in other counties and commute in to get better schools. - Traffic. This isn't as bad as other major metro areas, but depending on where you live it can be significant. - Not very walkable. There are a few areas that are walkable (12 South, Hillsboro, places in East Nashville) but you need a car. Public transit is pretty bad.

Neutral:- More conservative state politics. Nashville is fairly liberal, but there's definitely still a conservative bent at the state level. I put this in neutral because I don't think it's all bad (remember, no state income tax) but you may end up getting upset about state legislation.- Weather. Really hot summers. Winters aren't too bad. Occasional snow, and it can actually get chilly. Lots of rain (compared to CA). I don't think this is bad because I actually enjoy having seasons.- Big healthcare focus (both small and large companies).

tl;dr - Nashville is awesome, and I'm really happy I moved back. It's not as easy as the Bay Area to job hop, but I'm not worried about finding work when I do decide to make a jump.

Hydraulix989 10 hours ago 0 replies      
Repping Pittsburgh and Vegas! The Burgh has Uber ATC, Oculus Research, and Google now, not to mention CMU.
Tempest1981 10 hours ago 1 reply      
Anyone up north in Santa Rosa, Rohnert Park, or Petaluma? What's it like up there? Any jobs?
client4 14 hours ago 0 replies      
Come to Montana. We have SoFi, Oracle, Vubiquity, Submittable, many other tech companies, and a great outdoor culture if you're into that.
oaf357 10 hours ago 0 replies      
Come to the Palo Alto of the east coast: Raleigh
rch 12 hours ago 0 replies      
Check out Kingston, NY. You'd be surprised.
grillvogel 12 hours ago 0 replies      
youve all already ruined seattle
amyjess 13 hours ago 0 replies      
I'm fond of the Dallas area, especially the suburb Richardson.

Lots of tech jobs here, and the cost of living is very low (if you're paying more than $0.75 per square foot here, you're paying too much).

Ask HN: How did you find your first 10 customers for your startup?
28 points by going_to_800  17 hours ago   11 comments top 3
iqonik 2 hours ago 0 replies      
I'm aware that I owe you an email reply OP, sorry I have been busy and have stopped cold emailing customers.

Right now, I'm selling to retail / real estate (http://www.retailwizard.co.uk / http://www.propertywizard.io) so to get customers I literally go to their workplace & ask them for 5 minutes of their time. I did try emailing as you know, but I have found going to speak to to them face-to-face to be more effective for my niche.

Obviously email works for other sectors, something I'm looking to explore again in the future.

joshontheweb 16 hours ago 1 reply      
Twitter. If you are solving a real pain point, there will likely be people complaining about it on twitter. Search for those phrases and offer to solve their problem. I got my first couple hundred users this way. Then it grew organically from there.
gearoidoc 17 hours ago 1 reply      
It really depends on your product. Is it an app? SaaS?

Have you validated yet?

Ask HN: Does anybody still use Siri?
16 points by jacquesm  14 hours ago   16 comments top 15
icanhackit 13 hours ago 0 replies      
Use it at least a few times a week. Use cases:

 Set reminders (e.g. "remind me at 10pm to take out the garbage") Timers (countdowns for cooking) Call my partner/friends while my phone is in my pocket (via headphones) Wiki things/trivia (when someone says something or asks something that is esoteric) Set once-off alarms Find places
I've noticed it's getting incredibly good at figuring out what I'm saying - you can often see it refining its interpretation in real-time. Sometimes it's nailed requests that I thought it had no chance in hell of getting right.

creature 13 hours ago 1 reply      
I use Siri fairly frequently, but in certain narrowly-defined situations: when I've got my hands full, or am doing something else.

The two that come to mind are when cooking ("Hey Siri, set a timer for 15 minutes") or when I'm trying to get everything together for leaving the house ("Hey Siri, how cold is it outside?"). I'll also use it if my phone's in my pocket, I'm wearing headphones, and it's awkward to get my phone out ("Hey Siri, text Tom." "What do you want to say to Tom?" "I'm running 10 minutes late but will be there soon. Sorry!")

Gustomaximus 13 hours ago 0 replies      
I use the google version when driving to attempt to send SMS, make calls, set reminders and update driving directions. It's hit and miss. Google has some serious pain points like locking the screen and functionality right after a last command while driving meanig you need to unlock to do a next item. And most annoyingly you can set directions but I cant get the thing to actually start navigating.

I bought a windows phone that was on special recently to test and found Cortanta surprisingly better to use than the OK Google version. If someone nails voice it will be a significant decision making variable in my OS choice. It feel like both MS and Google are close but they need a new 'Steve Jobs' than has that last level of attention to detail and making it work in a practical environment. It feels to me it's more this lack of thinking through the UX is the bigger issue than the technology capability right now. I envy anyone working on this as it will be super interesting getting this right over coming years.

csixty4 7 hours ago 0 replies      
Kitchen & laundry timers. The weather. Creating reminders. Sending texts to my wife while I'm running or driving. Directions while I'm driving.
Pyrodogg 12 hours ago 0 replies      
Default functionality?

"Ok Google, will it rain today?" - This I use pretty regularly while I'm getting ready in the morning.

Personally hacked together functionality!

"Ok Google, turn the bedroom light on."

"Ok Google, turn all lights off."

"Ok Google, turn (?:the )?(?<loc>.+) lights? (?<state>.+)" Tasker-flavored regular expression.

Controls the relevant Hue lights in my apartment using Tasker + AutoVoice + Hue Pro Tasker.

I occasionally tinker and extend my hacked together Tasker functionality during my morning commute.

I never use the "Ok Google" functionality in public, only in the privacy of my own home.

jen729w 7 hours ago 0 replies      
Almost always to call people, yes. "Call [name of person]" works really well.

I look up my team's score, occasionally. Unfortunately that team is Sunderland so it's rarely a happy outcome.

"Remind me to do x when I get home" is another good one.

joshschreuder 12 hours ago 0 replies      
I don't use Siri very often, but I have one use case that I really like with a jailbroken phone.

I walk around a bit, eg. walking to work, and I don't have a fancy Apple Watch, so instead I have setup an Activator action to ask Siri the time when I hold in the Apple earbud pause/play button.

Pretty simple but it saves me from taking the phone out of my pocket to look at the time

MalcolmDiggs 11 hours ago 0 replies      
I'll use the "Ok Google" version if I'm completely alone. But if I'm in a room with someone else (or in public) it just feels weird and awkward to make someone listen to me set an alarm or ask for directions... feels like I'm over-sharing.
joezydeco 10 hours ago 0 replies      
My new Mazda doesn't have CarPlay (yet) but activating Siri makes it come over the Bluetooth audio on the system like a phone call. I use it primarily to send texts home while driving.
sigjuice 13 hours ago 0 replies      
I use Siri all the time.

 Call my wife. Where is my wife? Call my brother on Facetime audio. What is the weather today? Wake me up at 7. Remind me about bills when I get home. Get directions to <place>

ts4z 7 hours ago 0 replies      
Weather, directions, sports scores and betting lines. I use it multiple times a day.
PhantomGremlin 6 hours ago 0 replies      
There's two aspects to Siri. First is speech recognition, second is the actual AI.

Apple's speech recognition is very good. I use it as speech-to-text all the time in iMessage. I save a lot of time by speaking rather than by typing. It's more than 95% accurate for that purpose.

The Siri AI is very hit-or-miss. Sure it's great for finding out the latest football score. But if it winds up only being 50% responsive in general (and that's what it was for me), then it's not worth the trouble.

Once a person gives up on Siri, then it could take years before they make the effort to use it again. That's probably the current situation for a lot of people. That's where I'm at.

Edit: forgot to mention that i use a staccato voice for the voice recognition. Short pauses between words. It drives my kids crazy hearing it when they're in the same room, but it really improves the hit rate.

thecourier 13 hours ago 0 replies      
I enjoy having conversations with Siri in the loneliness of the tundra
hackerboos 14 hours ago 0 replies      
Setting timers.
eande 13 hours ago 0 replies      
My children play with it.
Help naming my event sourcing / CQRS platform
2 points by yrashk  9 hours ago   1 comment top
partisan 1 hour ago 0 replies      
What are some of the interesting capabilities? I like eventrecord and eventchain, but don't overly love either of them.
Did I reinvent the wheel? (JS plugin to link to page selection)
5 points by iafan  12 hours ago   4 comments top 2
tonyle 10 hours ago 1 reply      
Not many javascript stuff comes to mind, but you might find more implementations if you search for a specific problem you were trying to solve. The closing javascript thing that comes to mind is the letmegooglethatforyou site, an extreme way to point out the search button.....

From a personal point of view, Sometimes I would just email myself a link to a webpage if I wanted to view it later on mobile or vice versa.

In technical support over email, I used to send customers a link to a kb article or a pdf and a page number. I never had to go beyond something along the lines of, here is a link, you forgot to do step 4 or follow the instructions under the known resolution section.

From a bug reporting point of view, Most people would send a picture and send the dropbox link over slack/email.Dropbox has a little popup with the link to the image after taking a screenshot so it is very easy and fast.

It reminds me of Onenote and Evernote feature to copy snippets from a webpage, though I never tried to share the content.

While not directly similar, The code for searching for specific parts of a webpage seems similar to some web scraping solutions. Ie, here is a webpage, I want to scrape this selection for all similar pages,etc.

Wave concert app idea what do you guys think of this?
2 points by ivan_ng  12 hours ago   1 comment top
willcate 8 hours ago 0 replies      
You might want to read this before you get too far into it.


Ask HN: Collaborative json data model design tools?
5 points by dchuk  14 hours ago   1 comment top
debacle 12 hours ago 0 replies      
I've used Swagger before. I'm not sure it fits the bill for what you're looking for, but it has a few nice parser tools that produce good documentation and even a working API UI wrapper. For versioning, there's just a DSL format that is plaintext, so you can get diffs from there.


Ask HN: I want to learn a low-level, compiled language. What should I chose?
11 points by Jmoir  1 day ago   24 comments top 14
JoachimSchipper 2 hours ago 0 replies      
Aside from everything already said, C integrates very well with Python; understanding C will let you write Python bindings for new libraries and will let you easily rewrite performance-critical chunks of Python in a faster language.

For Java, you could learn C++ (via JNI) for the same reasons - but Java is less likely to use C libraries, and going from Java to C++ usually doesn't produce as much of a speedup as going from Python to C.

dman 1 day ago 0 replies      
Pick C or C++. There is a huge amount of code out there in these languages and learning one of them will open the door to you being able to benefit / learn from it.
johan_larson 16 hours ago 1 reply      
I'm not familiar with Rust, so I can't advise you there. But I have worked with the other two languages.

Go is not a great choice, because it's not very low level. You don't allocate and free memory explicitly, and you often work with maps, slices, and channels, which are quite high-level.

C is a reasonable choice, since the core of it is fairly simple. I expect that forty years of incremental additions have added quite a bit of cruft though, which you have to be able to see though. There also isn't very much work done in plain C these days. Most people in this space use C++, which is even more complicated.

May I ask what you are hoping to do with this skill? If you just want a chance to learn more about how computers work, an artificial assembly language like MMIX may teach you more while avoiding much of the cruft that real languages pick up as they evolve. If you actually want to use this for work, C++ is the way to go, but expect to be a beginner for a long time.


kibwen 1 day ago 0 replies      
Rust makes a fantastic first systems language, due to the fact that the compiler guides you in learning correct low-level memory management and prevents things that would just cause your C program to crash unhelpfully.

If you don't need a language that's as low-level as possible, then Go is also a good language to learn. It doesn't have much to teach in the way of memory management, but it does have pointers.

jtchang 1 day ago 0 replies      
Learn C. Specifically learn pointers and memory management. Just these two concepts will give you a huge understanding of any other language.
kristianp 1 day ago 1 reply      
C and Go are quite small languages. I love C for its history and low-level view of the machine. It's worthwhile learning C I think, as a way to understand part of the history of programming. However it makes it time consuming to program even simple things. Go is more productive, with maps, strings and a garbage collector.

C++ and Rust are both relatively complex. If you have aspirations to working on large native projects, then C++ might be the way, with Rust becoming more prevalent in the future.

woolybully 1 day ago 0 replies      
C because, a) every language we're currently using is a reaction to C (or a reaction to a reaction to C, etc.), and b) it is still going strong in areas such as Linux development, and is enjoying a huge resurgence in areas such as Arduino.
stray 1 day ago 1 reply      
Why not step off the beaten path and try a language that is safer than Rust, has a better concurrency story than Go, performance similar to C (but without as many ways to shoot yourself in the foot)?


drallison 22 hours ago 0 replies      
I'd recommend learning assembly language using a macro assembler. Getting up close and personal with actual hardware without a particular programming model being interposed will give you an appreciation for the conceptual and practical support programming languages provide. Writing programs that run on bare metal and programs that run with operating system support is an educational experience of the first order. Just writing a program that bootstraps itself is a right of passage.
kele 20 hours ago 0 replies      
When I started learning low level programming, I've studied C and x86 assembly simultaneously. This gave me a somewhat broader perspective.

From my experience with learning Rust, it might be a little hard to grasp both "the low level world" and Rust-specific things at once.

ddgflorida 18 hours ago 0 replies      
Choose C because of the huge amount of source code still out there, plus coding that close to the machine will help you be a better programmer.
tim333 1 day ago 2 replies      
Depends a bit what you want out of it. C for fundamentals, Go for fast web serving, Rust for stuff that's memory safe?
chmielewski 14 hours ago 0 replies      
REBOL and/or red-lang.org
SixSigma 17 hours ago 0 replies      
You don't say why you want to do it.

I would really recommend learning to program in assembler. And I think the best way to do that is something like AVR [1] or ARM on an embedded device but X86 is do-able with NASM [2] [3]

There's always MIPS via SPIM [4]

Learning assembler will give you more than simply swapping one imperative language for another. Python / Java -> C / Go / Rust is really not that large a leap. You will have the basics down in a few evenings.

[1] https://en.wikipedia.org/wiki/Atmel_AVR

[2] http://www.nasm.us/

[3] https://en.wikipedia.org/wiki/Netwide_Assembler

[4] http://programmedlessons.org/AssemblyTutorial/

Ask HN: Do you need a degree/diploma for a TN-1 (or other work) Visa?
12 points by jlos  1 day ago   15 comments top 7
raphtheb 1 day ago 2 replies      
I have successfully obtained a TN-1 Visa with a mostly unrelated degree (CEGEP generic "IT" degree). It does require a fair bit of paperwork, but it is absolutely possible.

Fair warning, as i wish someone had told me exactly this when i got my own TN-1: Any given border agent has the power to repeal said visa for any reason, without oversight. If they have a bad day at the border, they may elect, at any time, to permanently repeal it.

loumf 1 day ago 1 reply      
You can get a US programming job without a college degree, but it's easier if you have one (which you do). If you can do the job, any BA is fine for lots of places.

The main issue you'll have is resume screening -- so try to network to a job instead (or have a very compelling programming job application that makes your unrelated BA make you look well-rounded.)

There are also remote jobs in the US. Most would probably hire from Canada.

karanbhangui 1 day ago 0 replies      
In addition to being able to qualify with equivalent work experience (usually a ratio of 3 years work : 1 year diploma), there are two occupations that don't require a degree strictly: (Scientific) Technician and Management Consultant. My advice is find a competent tech immigration attorney in SV or surrounding areas who specializes and you will have a good time. I recommend Olivia Lee at Minami Tamaki or Chris Wright in LA.
sajal83 1 day ago 0 replies      
Usually work experience in related field makes up for not having a degree/diploma for these things. Not sure how many years is needed.
wprapido 1 day ago 0 replies      
as for immigration, yeah it's 3 years of experience equaling 1 year of college / university, but you might need a lawyer. speaking of your unrelated degree. one of the best developers i know has a degree in orthodox christian theology. oh, yeah, US market is so much better than CA/UK/EU/AU/NZ
adomanico 1 day ago 0 replies      
Yes, when I first entered the US on a TN visa I had not completed my degree yet.

I was able to obtain TN status at the time through the Sci/Tech category. It was a little bit different then the traditional Analyst category but it worked.

transitorykris 1 day ago 0 replies      
Yes, I've seen Computer Systems Analyst with grade 12 highschool and 12 years of experience work. (Anecdotally 12 years of relevant experience = 3 years of degree work, but I've not seen that codified anywhere).
Ask HN: How does D-lang compare?
14 points by hanniabu  1 day ago   discuss
Ask HN: What tools do you use to diagram micro-service architectures?
18 points by brookesey  2 days ago   8 comments top 7
pkorzeniewski 1 day ago 1 reply      
I recommend https://draw.io/ - it's easy to use, doesn't require an account and you can load/save diagrams from Google Drive, OneDrive and Dropbox (or, of course, from your device). I've created a lot of diagrams with it and it "just works" :)
insert_silence 2 days ago 0 replies      
Most of the time I'm using PlantUML [1], since it can live in the same place as the source code, moreover there is a IntelliJ Idea plugin which adds PlantUML support to the IDE [2], nevertheless I think there should be plugins available for all major IDEs.

[1] http://plantuml.com/

[2] https://plugins.jetbrains.com/plugin/?idea&id=7017

lookfwd 2 days ago 0 replies      
=> https://gephi.org/ + log aggregation/tracing - see http://opentracing.io/ and http://zipkin.io/
ryanicle 21 hours ago 0 replies      
I use either https://draw.io or Giffy Diagrams for Chrome extension.
MalcolmDiggs 2 days ago 0 replies      
I like Lucidchart (http://lucidchart.com).

Does what I need, and their google-drive integration makes it easy to keep track of the diagrams and share them with folks.

wprapido 1 day ago 0 replies      
libreoffice draw works fine for most of my charting needs. even google drawings is not that bad. draw.io is plain awesome!
lsiebert 1 day ago 0 replies      
www.yuml.me is text based, which I prefer
Ask HN: Where can I get constructive criticism for my app/website?
7 points by jimothyhalpert7  1 day ago   9 comments top 6
flxn 21 hours ago 0 replies      
How about a monthly HN "Criticize Me" post where people can show their current projects?Every top-level comment is a project and then the community can give feedback. That way you don't have the pressure of "Show HN" but can nonetheless benefit from the HN community.
sebg 21 hours ago 0 replies      
Rather than getting constructive feedback from the "internet", like you are asking, it would be much better to get constructive feedback from your actual potential users.

So rather than posting to Show HN, Reddit, or random internet friends, make a list of 10 people who you could consider potential users and email them asking for feedback. Then for any/all that respond, given them a small reward from iTunes, Amazon, etc.

brudgers 20 hours ago 1 reply      
Looking at the "Show HN" associated with your HN user name, one thing that pops out is that the post doesn't create much context for providing feedback. That is, there is nothing explaining what you are trying to achieve. Since I am clearly not in the target demographic, there's nothing for me really to evaluate the site against...I don't visit other street-fashion-rating websites or know why the woman on the beach is worth -422 for whatever it is that I'm picking.

It does something, but I don't know what let alone how well unless you tell me what it is supposed to do and why it is supposed to do it. I mean, I know there's a design vector under which I am simply not supposed to "get it," but I have no basis for evaluating it against a user story of someone who is supposed to "get it."

As others have said, the best feedback would be from people who are supposed to "get it". Absent that though, feedback requires an explanation...a blog or a comment or a link at the bottom of the page.

Good luck.

_jdams 1 day ago 1 reply      
Few starting suggestions below. Note that you should have a working example, but it doesn't need to be 'final' or 'perfect'. Don't be afraid to release to a select group of people early for feedback. That feedback will help further the development of the product or site.





PaulMontreal 23 hours ago 0 replies      
You're right, getting unbiased, honest feedback is very difficult, but critical.

If you're looking for feedback from a marketing perspective, as in, how are my customers likely to respond to this, how likely are they to buy something, then we run a free weekly marketing clinic over at http://paulmontreal.com

You can apply here http://paulmontreal.com/apply

nemexy 23 hours ago 0 replies      
Shoot me an email, would love to help :)
Ask HN: What should I do in Silicon Valley?
4 points by Jommi  20 hours ago   5 comments top 2
alain94040 18 hours ago 0 replies      
Kinnard 19 hours ago 1 reply      
You should start a startup, launch, get funding . . . and become a legend.

Don't think for a second that I am joking I'm dead serious.

Ask HN: What's the highest math level you need to be a hacker?
6 points by acidfreaks  21 hours ago   17 comments top 11
Someone1234 19 hours ago 0 replies      
I don't know what "hacker" means in this context.

In general most programming requires middle school levels of maths if that. A lot of maths knowledge higher than that is similar to programming, but learning the maths itself doesn't really make your code better in and of itself.

That being said there are specific jobs that require much much higher levels of maths in particular statistics, physics, and similar. But the vast majority of programming jobs are just business-information which requires near to none.

I don't use any non-trivial maths day to day and haven't since the start of my career. But I don't work in the science/economics/games development fields, I work in one of the many "boring" programming jobs. We are the silent majority.

MalcolmDiggs 17 hours ago 0 replies      
Algebra II is probably necessary (you at-least need to be very comfortable with the concept of variables). Stats couldn't hurt. Any math class that teaches you proofs will be helpful when you stat tackling BDD/TDD.

But overall, I'd say that taking a formal logic class (usually part of the Philosophy Dept at most colleges), will be the most bang-for-your-buck.

sharemywin 21 hours ago 1 reply      
The problem I see is a math problem and a computer problem both involve problem solving. So, if you don't enjoy problem solving then I doubt you'll enjoy programming. Not that you can't become a proficient programmer, but if you don't enjoy thinking about something until you "get the answer" I doubt you'll like your job.
drallison 18 hours ago 0 replies      
Haven't you gotten it backwards? You appear to be interested in what is the lowest level of math needed to be a "hacker". Of course, the question is hard to interpret as the term "hacker" has a multiplicity of folk definitions. Most of my colleagues think that "hacker" and "polymath" are synonymous and see it as a positive term. Other folks often think "hacker" describes people who maliciously break into secured computer systems and view them as pariahs.

In truth, computer programs and problem solving don't require deep mathematical knowledge, but it helps.

edimaudo 20 hours ago 0 replies      
Rather than focusing on math maybe this might help http://www.catb.org/esr/faqs/hacker-howto.html
Spoom 20 hours ago 0 replies      
For most programming jobs, high school algebra (and then really only for the concept of variables).

Add trigonometry and potentially calculus for 3D graphics, game development, and high finance quant stuff.

mrits 18 hours ago 0 replies      
There are a ton of things from math or many other sciences that can assist you in problem solving. However, if you made it through algebra and spent a few weeks studying a discrete math book I think you'd be fine. Algorithmic complexity interview questions would be easier to understand if you were more familiar with what graphics of logs and exponential functions look like.
dalke 21 hours ago 0 replies      
I think statistics and then discrete mathematics are the most important.

Here's an old rant by Shaw on the importance of statistics for programming - http://zedshaw.com/archive/programmers-need-to-learn-statist... .

Beyond those two, it depends very much on the type of programming you do.

27182818284 21 hours ago 1 reply      
The thing about math is that it isn't a requirement for most things in life, but there are almost zero things that aren't helped by learning math
dozzie 21 hours ago 0 replies      
#define "good hacker"
Wonnk13 15 hours ago 0 replies      
Linear Algebra. If you understand how to manipulate matrices and vectors you can get pretty far.
Ask HN: Raising money for the first time, any tips?
19 points by jorgecurio  1 day ago   12 comments top 10
ctstover 1 day ago 0 replies      
> 1 intermediate engineer = $65,000 CAD / year = $48,888 USD / year

The gross annual amount of an employee's base salary is very different than the cost of hiring an employee with said base salary. I know CA != US, but payroll taxes, benefits, retirement contributions, unemployment and disability insurance, etc can't be that alien of a concept. Or is it? In the US estimate 130%-160% of the salary for base employment. Or is circa 30k for an intermediate engineer normal in Vancouver? In which case what would the entry level position make?

benjismith 1 day ago 1 reply      
I had a similar idea as you originally with my startup: build a functional MVP, launch with beta testers, recruit co-founders, raise seed capital, and then (finally) start to focus on growth.

I wasted probably six months going down blind alleys with this approach. Here are some of the lessons I learned:

1) A small group of beta testers will not give your product the time and attention you need to find product-market fit.

2) High quality collaborators, willing to devote all their spare waking hours to your vision, are extremely hard to find (and even harder to get up-to-speed). Especially on a budget. You'll probably see several promising co-founders come and go before you find a good match.

3) Even if you have a really sexy MVP and a great team, it's nearly impossible to fundraise until you can point to a handful of satisfied early customers. You might think you can raise $100k (chump change!) to fund your first six months of operations, but you're probably wrong about that.

The only thing you should be doing right now is getting your product into as many customers' hands as possible. In your post, you say you plan to "charge money and earn revenue from day 1".

Today is day 1. Go get some customers!

orasis 1 day ago 0 replies      
Forget about raising money right now. Build shit fast. Ship ship ship ship ship ship ship.

Read "The Lean Startup":


loumf 1 day ago 0 replies      
Does the main SaaS make money? Use that money to get your first 10 sales. Do annual deals for cash-flow.

If someone told me that they will make $1mio in sales on a $156k investment, and they wanted that investment from me (not just do it themselves), I would think it was some kind of scam.

maxxxxx 1 day ago 0 replies      
Realistically I'd say double or triple your expense estimate. You are low-balling yourself. Everything takes much longer and costs more than you expect.
hotcool 1 day ago 0 replies      
The salary for a marketing person is on the low side IMO. With rent prices being some of the highest in the world, can you even live in Vancouver for $35,000 CAD?
jcr 1 day ago 0 replies      
I wish I could be of more help, but I'm the wrong person to ask. On thebright side, the right people to ask (like YC partners) often hold"Office Hours" to take and answer questions.


debacle 21 hours ago 0 replies      
You're being incredibly optimistic with all of your estimates here. If you are looking at 3 employees your burn rate is going to be much closer to $300k.
twunde 1 day ago 0 replies      
You should probably put some money aside for tools and marketing budget. You probably need a server somewhere and a domain name. Marketing almost certainly needs an advertising budget.
icedchai 1 day ago 0 replies      
wow. around here (northeast US near Boston) you're lucky to get one decent guy for 125K.
Ask HN: Why did Google Buzz fail?
6 points by acidfreaks  1 day ago   4 comments top 4
throwaway420 1 day ago 0 replies      
Different companies are great at different things. Obviously generalizing a bit here, but...just to give an example...

...Apple makes really great hardware and good software, but would you expect them to make the best social site in the world? Maybe, if they really put their minds to it they could, but it's just not part of who they are. For instance, they have one of the world's biggest captive audiences in their suite of music software, but can't add basic 1.0 features and interactions to their repetitive attempts to make a music social network inside of iTunes. It's not even funny anymore, just really sad.

...Google is very smart at algorithms and dealing with massive scale, but would you similarly expect a bunch of smart nerds to build the best possible platform for sharing or rating stuff with your friends? What limited social success they've had with YouTube they've had to just buy, and even this they almost screwed up with their ridiculous abortion of a Google Plus integration.

It's not that these companies don't have talented people inside who are capable, just there's probably a lot of corporate momentum and interference from managers on top who dictate that things need to be done a certain way.

lsiebert 1 day ago 0 replies      
I remember friends loving it, as it was built into gmail in a way that the people behind @facebook.com email addresses can now only dream of. It's roll out, as a opt out social network with poor default privacy, was probably the wrong way to go, and lead to lawsuits and a lot of problems. I mean, I think they were dogfooding, and knowing where your coworker is at the Google Plex or who they talk to most often is a lot less concerning then if it's just any email correspondent.

Let that be a lesson on dogfooding.

But it didn't fail, exactly. It got sunset, rolled up in what I would guess was a collective organized push to build a single social sign on. And arguably some of the lessons were applied to Google+, where circles can be seen as a way to deal with buzz's privacy protection drama.

The truth is Google keeps trying to pull users away from their gmail and google docs with hangouts and google+ and google photos into a second tab, when what people really want is a SPA that handles it all inside Gmail.

Facebook is trying to do something of the same with Messenger and mobile.

But honestly, Google could probably, at any point, deal Slack and Hipchat a huge blow by sticking channels and channel management features in Google Apps for Business, maybe adding some optional google wave magic or contextual ad inclusion (you mention Twilio or Mandrill, it shows an ad for a similar company). So Buzz may rise again in some form, perhaps less influenced by blog posts and more by RT chat.

But I'm not a part of Google, and I'm just talking. I don't know him, but I'm going to reach out to the former Google Buzz PM and ask if he'll respond here.

chris_va 17 hours ago 0 replies      
Privacy snafu derailed it. Some warnings were ignored, and it ended badly.

It was used extensively internally to Google prior to launch, and worked great. I am slightly disappointed it did not get rolled out as an enterprise product.

bobby_9x 1 day ago 0 replies      
Because it had a very disjointed user interface and most people just didn't see the point.
Ask HN: Which successful startups were rejected by YC?
158 points by mrborgen  3 days ago   60 comments top 13
ig1 3 days ago 4 replies      
Companies which have publicly disclosed that were rejected by YC and have since raised >$20m:

* Chartboost

* Sendgrid

* LightSail

I've seen it claimed that Couchbase should be on this list, but I've never seen a primary source which verifies that they were rejected from YC.

mhluongo 3 days ago 1 reply      
BlockCypher[1] has written about this. I think SnapCard did something similar, though the closest I can find is an article about the laundry service they started[2].

[1] - https://blog.blockcypher.com/what-adam-saw-that-sam-didnt-a0...

[2] - https://pando.com/2013/10/11/superhero-laundry-founders-laun...

EDIT - Citations

rajacombinator 3 days ago 1 reply      
PG offered a good proxy for this a while back. He said if you look at the top companies from other accelerators, most of them probably applied to YC also.
HeinZawHtet 3 days ago 0 replies      
helloanand 3 days ago 2 replies      
CleverTap - integrates app analytics and marketing. We were known as WizRocket back then. We now have 1500+ customers, and raised $9.6 M from Accel and Sequoia.
shanwang 23 hours ago 0 replies      
I remember AirBnB's founder said they got rejected by 7 VCs when they started.
mcminno782 3 days ago 0 replies      
Branch Metrics

They were prepivot (Kindrid Prints) and YC didn't like their idea

mw67 3 days ago 0 replies      
brudgers 3 days ago 0 replies      
My understanding is that a meaningful fraction of YC companies and founders were rejected by YC before acceptance in a later batch.
synaesthesisx 3 days ago 0 replies      
Friends with a handful of founders that have been rejected by YC - their companies are all doing incredibly well today.
quadrature 3 days ago 2 replies      
How do you define successful ?.
mschaecher 3 days ago 0 replies      
Chrome made pageAction based extentions unbearable
4 points by ldong  1 day ago   discuss
Ask HN: What was your biggest regret about learning programming?
19 points by acidfreaks  2 days ago   35 comments top 16
ones_and_zeros 20 hours ago 3 replies      
This probably isn't what you are looking for but I wish I never learned, or at least never decided it should be my career. A career writing software has a shelf life. Age discrimination is real, software engineer experience isn't valued like other professions. And yes, there are plenty of firms that will hire engineers over 40, the fact remains that there are vast numbers of employers that won't and once you hit the senior/principal engineer in 5-10 years, you plateau. The pay is ok, for now, but the downward pressure on salaries is palpable. Also, it's difficult to be told how well we are paid when a vast vast majority in the software mecca (SF) can't actually afford a single family home with a sane commute. Some people can afford those homes, but it's not the software engineers. The industry is filled with work that just isn't interesting and of the interesting work that exists it tends to go to those that are the most political. We like to think this profession is a meritocracy but it isn't. We are a managed people without a seat at the big boy table and this means we will never truly have the control over our "destiny" we think we have.

If I could do it over again, after graduating with a CS degree I would explore either going to Wall St to grind and retire after 5-10 years, go to a top 10 law school grind for 10 years and retire, go to medical school. Hell, I'd even just do a DO school in the carribean. Sure you get crapped on for your residency, but after that it only gets better and you don't have shelf life.

elbigbad 15 hours ago 0 replies      
I wish I hadn't had the attitude of, "I'm going to learn everything from scratch because I don't need help or dependencies." I was stubborn and thought that to be a "real" programmer I had to know how to implement libraries from scratch and build out every single feature myself and learn the ins and outs.

Upside: Now I know many of the "under the hood" implementation things

Downside: Took FOREVER to build anything useful, demoralizing to spend so much time on algorithms and learning every bit of C and JavaScript from the ground up and not be able to do anything useful quickly. Didn't know how to put what I knew to practical use in the modern web.

I got into a funk and one day started learning a framework and it changed my life. I could use what I learned to build on top of the framework and quickly get webapps running that people could actually use.

I regret that I was stubborn and wanted to "learn it the hard way." If I could do it over, I would go through a book on a particular programming language to learn the ins and outs, and then quickly apply that knowledge to a framework. Much better positive feedback loop being able to see the fruits of my learning come together into something practical and actually useful rather than little programs that lived on my local machine and didn't do too much.

It's much more fun and less tedious to built out my own apps on the structure of people who came before me. GOod recent example: Building an app and wanted people to be able to drag and drop to upload files into their browser. Old me would have spent a month learning how to implement this in JS from scratch, new me just uses the DropZone JS library to make this happen and then I can focus on what I really want the app to do.

Not sure if any of what I'm saying makes sense to anyone but me.

meric 23 hours ago 1 reply      
No regrets, though I'm thinking maybe in a year or two I'll retire completely from programming and work on physical fitness instead. Perhaps find a job that doesn't involve programming. I will probably program as a hobby.

I know if I continue programming as my employment until I'm an old man without trying other pursuits, I will definitely regret it.

I'm 26, and I wrote my first line of code when I was 13 or 14 years old, and perhaps the only sub-fields of programming where I didn't dabble in substantially are assembly and prolog. These days I feel like, with programming, I've seen it all before. C, C++, Python, Objective-C, node.js, Lua, Lisp, Haskell, GPU computation, Django, REST API, React, Angular, Django, graphics programming, mobile apps, iOS, Android.

I've spent time with each of them, most of them in a hobby and commercial capacity and these days everything seems a bit too familiar. I know there's a lot of people who have way more expertise than I do, however, I think it would do me good to get some space. My body is giving me hints I can't continue in the same way I have for the past ten years - I feel my legs getting weaker by the day, random points of tingly pain in my finger tips that comes and goes. I find I really like looking at trees and feeling the wind in my face. I would love to do a lot less sitting and a lot more moving, as in quitting programming as employment completely, starting within 9 to 12 months.

japhyr 1 day ago 1 reply      
I wish I had learned about testing earlier.

The idea of testing code was never covered in any of the introductory books I read. I learned the basics of C, Fortran, and Pascal while doing a physics undergrad in the 90's, then I learned Java and Python in the 00's on my own from books and websites. None of the introductory books I read introduced the concept of testing. It wasn't until I started reading programming blogs on a regular basis that I started writing tests for my code. Once I did, the quality of my code immediately improved and I felt much more confident in the code I wrote.

When I wrote an introductory Python text recently I included a chapter on the most basic aspects of testing. Beginners don't need to write tests for everything they write, but they should definitely be aware of the concept.

throweway 4 hours ago 0 replies      
I should have explored outside of the ms / .net stack sooner. Its a comfortable world and a decent platform but limiting for the mind.
umbs 1 day ago 0 replies      
C is my primary language of coding. I work in networking industry. So, my suggestions could be specific to this field.

I should have learnt more of following (a) memory management, (b) process memory layout, (c) good coding practices (d) read up code from other projects. There are really brilliant programmers out there churning out awesome code and that itself is a great teacher. (e) Teaching whatever I learn. Teaching (especially writing it down on paper/webpage) brought clarity to me.

Not doing all of the above early in my career is a regret I have now.

brbsix 1 day ago 0 replies      
Failing to RTFM in it's entirety, immediately after becoming familiar with the basics of any particular language. You might think you're saving some time by skipping over the tedium, but it ends up costing you.
sotojuan 1 day ago 0 replies      
Still my regret because I keep doing it: losing focus and switching context too much (languages, frameworks, etc). Getting better at it though.
evm9 1 day ago 1 reply      
My biggest regret about learning programming is that I tend to approach things in the real world from an engineering perspective, which isn't always best for a given situation.

I try to avoid it and over time I've done a better job of approaching things dynamically.

codeonfire 2 days ago 3 replies      
Probably wasting so much time trying to make languages work that weren't really necessary. I spent so much time messing with C++ and performance and it was pointless because CPU's went from 4.77 Mhz to 3 Ghz. Also I probably would have just headed straight for a top CS school instead of wasting time teaching myself out in the sticks or learning 20-30 year old tech at whatever local university is nearby. Literally a lot of schools are still in the cold war era when it comes to teaching.
hanniabu 1 day ago 1 reply      
Getting excited and wanting to build something with my new found knowledge. Doing this after learning a few new things really slowed down my learning. I wish I waited to learn a lot more before starting a project, it would have been more efficient, I'd know how to work smarter, and I'd have been able to make coolet projects.
svisser 2 days ago 0 replies      
Postponing to learn SQL.

This should be done sooner rather than later.

lsiebert 1 day ago 0 replies      
I could have found a mentor. Hell I'd still like one, even now.
blooberr 1 day ago 2 replies      
Wish I had taken better care of my eyes.
lastofus 1 day ago 0 replies      
Doing too much of it and developing chronic RSI. Take breaks!
AnimalMuppet 1 day ago 0 replies      
Being cocky because "I knew how to code", rather than having any idea about how much I didn't yet know.
Ask HN: What were the most promising YC startups that ultimately failed?
22 points by jrbapna  3 days ago   15 comments top 4
danielford 3 days ago 2 replies      
The most disappointing YC-backed product I tried was Stypi.

I teach community college and sometimes I wonder about the thought processes behind some of my students' papers. Paul Graham linked an essay he wrote in Stypi, where you could watch him write it in real time. This was clearly the greatest computer-assisted tool for teaching writing ever, and I immediately incorporated Stypi into one of my writing assignments. I wanted to know how much my students proofread, how they structured essays, and what they struggled with as they wrote. I was so excited about it that I wrote the entire assignment in Stypi and linked my students to the replay in case they were interested.

It was a disaster. So many students lost essays in browser crashes or were flat out unable to use the software. I ultimately had to apologize to my class, give everyone an extension, and cut Stypi out of the project.

Apparently they were acquired though, so I guess they made someone happy.

S4M 3 days ago 1 reply      
You should check HomeJoy. They were a cleaning company (they subcontracted cleaners) that went through YC, had a huge growth and raised about $40M, but went on to fail. Look for them in HN search, it has been discussed a lot.
kevin_morrill 3 days ago 1 reply      
One simple way to evaluate this would be to look at press attention.

I did a quick check using Mattermark data of which YC companies got the most news since 2013 that are not still alive. It yielded (num articles / startup):67Homejoy13Tipjoy13Buttercoin6Tutorspree

dedalus 3 days ago 0 replies      
Buxfer was a very interesting company I loved to use but strangely they didnt go as far as I thought they would
Ask HN: What's the current state of XSS attacks?
6 points by gorpomon  1 day ago   2 comments top 2
Llevel 1 day ago 0 replies      
This post didn't gain much traction, but XSS attacks are still pretty popular and Google awards up to $7500 for XSS attacks[1]. React and Angular may help prevent XSS attacks, and while I don't know specifics, they likely do have some ingrained tools to prevent it occurring. I wouldn't be surprised if a XSS exploit could find a way around client-size sanitization though. In a perfect world, all strings coming from your server would be pre-escaped.

Rails is 'immune' in the sense that it doesn't let you directly drop HTML onto pages from strings without escaping it first, and if you would like to do so, you have to explicitly mark the string as safe[2]. This isn't to say that XSS is no longer an issue though, Rails and other frameworks help prevent these occurrences in many cases in simple applications, but larger scale applications have a lot more code and a lot more ways to punch holes in that protection. In fact using Express with with Node.js doesn't sanitize your strings by default (as far as my quick research has shown), which leaves a potential attack vector.

While XSS is a very well known vector, XSS attacks are not uncommon in non-boilerplate web applications. Fortunately sanitization is easy and bugs can often be fixed quickly.

Browsers can prevent some methods of XSS, such as by preventing loading JS from a remote untrusted source. If you find a way to drop JS directly onto a page that the browser can't catch (such as the entire JS source being delivered by the server), there's still vulnerability.

OWASP tends to be the place to go to learn about web security[3]. They have lots of examples of potential exploits.

[1] https://www.google.ca/about/appsecurity/reward-program/[2] http://stackoverflow.com/a/3932440[3] https://www.owasp.org/index.php/Cross-site_Scripting_(XSS)

alltakendamned 18 hours ago 0 replies      
You might want to check out http://www.html5sec.org for an overview of more up to date vectors.
Ask HN: Is the Hacker News Team Actively Developing Arc?
17 points by Kinnard  1 day ago   10 comments top 2
dang 1 day ago 1 reply      
Nearly all our development has been on the HN application rather than on Arc itself. Of course, in a Lisp, the line between application and language is blurred. Many of our changes have a language-like quality, but because they're implemented in macros, they haven't involved modifying Arc itself.

We did make one change to Arc proper: we added syntax for binding thread-local variables in function signatures, analogous to how optional arguments are declared. This adds a limited kind of dynamic scoping to Arc. That is useful when you have some 'top level' state (e.g. the basic parameters involved in making an HN web request: username, item id, etc.) that you'd like not to have to pass down every chain of function calls that's going to need it at some point. We originally added this as an experiment to see whether it would simplify or complicate the code. It simplified it very nicely, so we kept it. I can describe this in more detail later if anyone's interested.

Ask HN: RESTful API Pagination Strategies
4 points by allcentury  1 day ago   3 comments top 3
mnort9 22 hours ago 0 replies      
Twitter has some good points on the problem with paging and uses a "max_id" & "since_id" instead.


evm9 1 day ago 0 replies      
You don't need to know of changes unless the user is on that page.

You can use websockets to broadcast/listen for changed data and updated the DOM accordingly (if you're on the web).

Ask HN: Why are there so few reviews for coding bootcamps?
52 points by jmstickney  4 days ago   47 comments top 14
cenazoic 4 days ago 1 reply      
As a relatively recent bootcamp grad who hasn't written a review, here are my excuses/hypotheses for others who haven't:

a) simple laziness. A good review takes time and thought to write, and the time isn't necessarily in the writing the review, but in processing the experience after graduation. By the time you have a more balanced (ie, graduated, employed/unemployed) perspective, you've probably moved on to other things.

b) in my case, it's mostly due to general ambivalence about the experience. There were things I liked, things I thought weren't done well, and the overall effect is to cancel each other out. Ambivalence doesn't encourage taking the time (see above) to write down thoughts the way more extreme positive or negative views do.

c) also specific to me: I genuinely liked the instructors and most of my cohort, and writing anything negative seems impolite - not wanting to hurt someone's feelings or seem ungrateful. Irrational, but there ya go.

MrDrone 4 days ago 2 replies      
Having done an online boot camp I can say at least part of it is not wanting to spread negative feedback that might devalue your investment.

I imagine many people go into these programs to gain skills to get a job. If afterwards you talk about how the program failed to prepare you for that you're shooting yourself in the foot.

As to why there aren't more positive reviews - maybe it's related?

elevenfist 4 days ago 1 reply      
One reason that also explains why there aren't many reviews of universities, relative to the number of people who attend: When your career depends in part upon the esteem of your degrees or certifications, speaking negatively about the source (uni, a camp) is disincentivized.
throwaway847027 4 days ago 0 replies      
A number of employers (at least in SV) are so biased against bootcamps that the only sensible course of action is to pretend it never happened as soon as is feasible.

If you review a bootcamp, you risk a permanent association with having attended a bootcamp.

xiaoma 4 days ago 1 reply      
I wrote a fairly detailed review on my blog. http://logicmason.com/2013/hack-reactor-review-life-at-a-hac...

It lead to several sites emailing me and asking me to write a review or to link to their sites. Here is what I wrote to coursereport:

>By completely ignoring the issue of student outcomes, your resource does prospective students a disservice. How about listing average salaries, listing graduation rates, linking to yelp profiles and linking to student directories for those schools confident enough in their outcomes to share them?

I hadn't looked at any of these sites in a long time, but to the best of my knowledge, very little has changed. They offer a comparison only of the costs of the various options, not the value. The person who emailed me did seem to express some vague interest in adding that kind of information later but two years later it's still not there.

At least for me, the main reason I avoided the "bootcamp review" sites is that I didn't feel any would have given me useful guidance as a prospect (whereas Quora, Yelp and HN threads would have if they'd been around when I applied).

marktd 4 days ago 1 reply      
Many of the bootcamps are relatively young with not that many attendees per year. Back-of-the-envelope calculation: ~50 per cohort, 6 cohorts per year is 300 students per year, times 3 or so years is around a thousand total enrollees. 100 reviews is 10% of people reviewing - that seems pretty high to me.

FWIW: I did a bootcamp, loved it, never wrote a review. Just laziness/generally don't write reviews for things. I would guess many people don't write reviews for the same reason.

cpymchn 4 days ago 0 replies      
I'm a grad... and I would say part of the phenomena -- and this might sound corny but I will explain -- is how bootcamps are a personal journey.

By that I mean the entry point for most participants are all different, the expectations for most participants are all different, the experience for most participants are all different (some students work harder than others), and the outcomes are all different.

I felt there was more to learn than there was time (I did a 12 week course), so how I felt after graduating was largely a reflection of my own confidence and ability in contrast to the effort I put in and not a direct reflection of the quality of the instruction.

The Dreyfus model of skill acquisition [0] is a useful reference here. Any program that claims you will gain mastery over a discipline in a dozen weeks is lying to you. The guys that ran my bootcamp were plain about that. They said they would help me help myself learn... which they did but not to the level I really wanted to get to. And that more than anything is why I am ambivalent about recommending them.


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

trowawee 4 days ago 0 replies      
I loved my bootcamp experience, am still plugged into the alumni network, am not ashamed of it (why would I be?), but I'm probably never going to write a review of it. I'm happy to talk to people about it, but I'm not going to take the time to go write a review. There's no particular pay-off for me, and besides, the program changes constantly; I mentor where I graduated and in the 1.5 years since I finished, tons of things have changed in terms of how they organize things. I'd feel like an idiot if I said, "Oh, this was a part I didn't like," and then somebody who worked there emailed me and said "Hey, that doesn't exist any more." (Which has happened, except in conversational form.)

And sure, I'll freely cop to self-interest here. Bootcamp grads get enough shit from people in tech who want to dick-measure. I'm not going to do anything to further the cause of people who already think I'm an incompetent chimp with a keyboard.

Also, like the SwitchUp person already said in this thread, there's no reliable source of data for outcomes. I can tell you how long it took to get a job and what I made fresh out of the course, but why would you believe me, especially if you're already primed, like a bunch of people here clearly are, to believe that bootcamps are bullshit and their grads are rubes desperate to cover up the fact they got bilked? Maybe I'm just a plant; maybe I get paid a combined $200k a year by DBC/GA/HR/Flatiron to fire up 100 sockpuppets and argue that bootcamps are a good investment to con people on Reddit/HR/wherever. (That actually sounds like a super fun, super immoral job. Maybe I can trick them into actually paying me to do that. OR MAYBE I AM STILL MESSING WITH YOU. ~spirit fingers~)

lsiebert 2 days ago 0 replies      
Hmm... there is probably space for a service here. Find out who applies to boot camps, interview them, find out who gets accepted to boot camps, interview them, then interview the graduates and any drop outs/people cut after the program is over. Use questions drawn from standard sociological and psychological surveys like the Grit-S Scale http://www.sas.upenn.edu/~duckwort/images/12-item%20Grit%20S...

Provide ratings and info to the general public that don't just show rates, but trends, who drops out, comparisons of success rates for different groups, etc. Provide more structured but still anonymous feedback, for a price, to bootcamps as a consultant, or get a grant from a large tech firm. Publish papers in conjunction with academia on a delay.

I think what bootcamps could do, if they were willing to, is be much more agile in changing how they work based on research then a 4 year school, and actually do research and experiments to find better ways of teaching, and improve the industry as a whole.

zindlerb 4 days ago 2 replies      
Try yelp. Hack Reactor has 150+ Yelp reviews http://www.yelp.com/biz/hack-reactor-san-francisco
skyyler 4 days ago 5 replies      
Kind of relevant: Are bootcamps worth it? I'm looking to get into programming, but I have a full time support job right now that I need to be able to live and eat. I can save my money and do a bootcamp, or I could learn how to program in my downtime. I'm not sure which route to go through.

My friend did a local bootcamp and now he's doing ASP.NET work and loves it! I'm just scared of doing that specific one because I don't really have interest in anything microsoft.

mdeggies 4 days ago 0 replies      
I believe there can be legal repercussions if you write negative reviews about some of these bootcamps.
ldn1854 4 days ago 1 reply      
I did a GA bootcamp, during which time we were all encouraged to blog about our experience on a weekly basis (and we did). I'm not sure where I'd necessarily write/post a proper review.
Joof 4 days ago 0 replies      
Theory: If you disliked it, reviewing it poorly could reduce the credibility of your education. If you liked it, you don't care enough to review it.
Ask HN: Who's making $300k to $1m as a cloud engineer?
109 points by sgustard  1 day ago   92 comments top 15
eranation 1 day ago 4 replies      
I have a friend who is a cloud architect at a big-4, he is making a little more than $300k in total comp in NY (base is lower, a lot of RSUs etc), but he is more than just an engineer.

He has a friend at another big-4 in NY, also a cloud architect, he is making $400k

I think that the $1 million package is incorrectly calculated. This is perhaps the total package for 2-3 years, including signing bonus (vested over a couple of years) and RSUs (vested over a couple of years)

Annual total compensation for any big-4 Sr software engineer with a lot of experience in SF I assume is around $300k and can get up to $500k if you are really good.

I don't know of anyone who is making $1 million a year, even senior directors at big-4s. Perhaps if you are a Phd who worked at Google cloud / AWS / Azure for 5 years, wrote their software, talk at cloud conferences, wrote "Cloud computing for experts" type of books and published a seminal paper on distributed computing, then perhaps you will get a total compensation nearing that.

If you are just a cloud architect at a big-4 I think the lower part makes sense in total comp, the upper bound sounds completely ridiculous. I have friends who got offers from Amazon and Google for very, very senior cloud positions, way more than "just a cloud engineer", and the total comp is around $300-$400. If the stock goes up though, then the RSUs might be worth much more.

If LinkedIn / Facebook are offering engineers an annual $1 million I'll be very surprised.

tsycho 1 day ago 0 replies      
People seem to be getting confused between salary and total comp.

Making 300k+ in total comp is pretty easy at the big Tech companies. Most level 5 Software Engineers make around that and there are >10 thousand of L5 SWEs at just Google; and I don't think Facebook, Microsoft etc pay any less. This might change if there is a downturn and these companies stop giving out significant annual stock refreshers since the base salary part of the 300k is only about 140-170k. But as of now, the numbers are"normal". To reach the close to 1 million level, you need to be at least a level 7, and there are very few of such.

Now salary is a different matter. A 300k+ salary is very rare, and you probably need to be a director at least to command that. As you rise up the ranks, salary goes up at a much smaller rate than the annual stock grants/bonuses.

thrway127627 1 day ago 3 replies      
The article seems to be using "cloud engineering" to mean what I would call "data engineering" or "distributed systems engineering". If so then the numbers they're throwing around seem high but attainable. I would call myself a "data engineer" (I build ad servers, recommendation engines, etc for clients) and have been getting offers in the low 300s for full time work with about five years of experience.
simonebrunozzi 1 day ago 1 reply      
It's a joke.

I can disclose that, in a recent past job as VP in a tech company, I had a very generous package which was a bit above $0.5M, all included (base, bonuses, options and RSUs) - then the stock went down (options became worth nothing, stock lost more than half its value), and the actual annual comp went down by about $70k-80k.

I am sharing this here to benefit the discussion, please do not make a big thing out of it.

I know it's a ton of money, but I'm pretty sure that most purely technical jobs don't surpass 300k-350k. 1M is simply foolish.

Furthermore, if you consider income taxes, and the cost of living in SF, the number is still high but not as nice as it seems at first.

Netflix, however, consistently pays way more than any other company in the valley - and yet, it is still an exception.

cjbprime 1 day ago 0 replies      
See Dan Luu's post about working for big corps:


He describes a boundary around $250k at "senior", and to get above it you'd need to become some kind of principal/lead.

montbonnot 1 day ago 0 replies      
Include about 100K worth of stock in that 300K package, which will vest over 4 years. So your annual salary goes down to 200K + 25K (assuming the value of the stock doesn't move at all). 225K per year is slightly above what a 5y standard SWE makes here in the Bay Area working for a big guy. Really nothing exceptional here... By the way, 225K/y after income tax would be about 140-150K net income per year. Where are these $300K? :)

Also, any key hire like a scientist/data analyst/PhD working in a big company would easily get $1 million offers from other big companies.

abofh 1 day ago 0 replies      
It's definitely possible, but typically that sort of package will be long-term employees at IPO/buy-out with an incentive-to-stay package (You just got 4MM$ from your options, but we'd like you to stick around for a couple of years, so we'll give you another 4MM package that vests over 5 years).

You won't get that sort of offer at an illiquid startup (except as un-valuable options) - but it's certainly within the ballpark of reason for people hiring experienced engineers at highly profitable companies.

JustSomeNobody 1 day ago 0 replies      
What the heck is a "cloud computing engineer"? Is that some made-up BS like "customer service engineer"?
throwaway501101 1 day ago 0 replies      
Total package includes base, stock, bonus. Lower end of that range is attainable for most. Upper-end is also attainable, either joining prior to the IPO and holding on to the stock afterwards, or by delivering outsize impact.
erikcw 1 day ago 0 replies      
Could the reporter be extrapolating from a couple of aquihires?
fosco 1 day ago 1 reply      
can someone find a job posting with this type of pay scale? I am curious what skills I should develop.

at this point I do not believe this unless you are the lead architect.

for exaple this job posting I cannot see payin more than $165,000 in dc/ny/bay areas... but maybe my previous exposure to the big four has been limited... was anyone able to find a job posting that pays this much?

goldenkey 1 day ago 9 replies      
This is a fucking joke guys. Programming is not the career job that will get you those kind of figures, if it does it sure as fuck will be more of a management position. Look guys, salaried work will never make you 'rich.' Believing it will is the same belief that a startup will succeed. You need to get out of the salary game and work for yourself or do consultantcy if you want big bucks
3pt14159 1 day ago 0 replies      
I know some people at Google and Netflix that make that range. Really solid technical skills, strong communication skills, consistent productivity, and strong negotiation and you can get to $400k / year. I haven't heard of more than that outside of a couple cases (I know a couple high profile women that earn millions a year, but this is more because there aren't that many publicly visible women in the tech world) unless they're working for a hedgefund or as a sales engineer.
allard 1 day ago 0 replies      
300k is 300000,300K is 307200,1m is 0.001,1M is 1000000

to throw around some figures too.

stormqloud 1 day ago 2 replies      
A few people that get interviewed by a reporter do not make a trend.

I've heard of SALES ENGINEERS making that kind of money, but not technicians.

The moment a programmer is working at home remote making $300K per year, the employer will find some offshore person to do it at 10% of that price.

Reference Disney and the H1B debacle etc.

The only way somebody as a technician is making that much money is the company they work for hasn;t found a way to get rid of them yet and replace them with cheaper options.

They can find themselves out of a job very fast at that price range.

Once you do the initial setup and things are stable(documented), they will kick you to the curb and replace with $50K worker.

Ask HN: I'm taking 2 weeks off work to build a prototype. Any advice?
15 points by nicwest  4 days ago   36 comments top 16
chatmasta 20 hours ago 0 replies      
The most successful side project I ever had was an SaaS business I cobbled together in two weeks of Christmas break sophomore year of college. It paid the bills for the rest of college.

This sprint sounds like a great way to force constraint on yourself. Make sure you're using that constraint. Don't work on this like you would any other project. You need to be fully aware of the deadline, and constrain features within it.

If you're making an SaaS, the the first thing you should do is setup payments. That will give you confidence that this sprint can actually result in some real revenue. Then, you can build out the features.

Also, don't experiment with any new technologies. Use only what you know, and prefer shitty spaghetti code over well-architected solutions. Just get this shit out the door.

coreymaass 19 hours ago 0 replies      
If the intent is to sell the prototype, put up a landing page right now, with a free Mailchimp subscribe form, and a super simple blog (for extra points, use WordPress, setup Jetpack and Post by Email. Then to "blog" you only have to send an email). Start spreading the word about the product, but also about your two weeks. Dedicate at least a little time each day to update your blog, and/or email your mailing list. People who follow you on the journey will become fans for life.
Aij7eFae 4 days ago 2 replies      
Just do yourself a favor and include one more week.

It doesn't matter what kind of project, always include one more week.

Don't be upset if you can't stick to your plan, allow yourself an extra week.

It's not your fault, that's basically software engineerings nature.

You should get out daily, for at least 1 hour.Simply because that one hour is for recharging your brain, which again leads to better performance.

Also what I try to do, when I'm doing a hackathon, is that I'm looking for templates from themeforest or wrapbootstrap.

There are also a lot of good templates for your framework, where auth/register/signup/signin/roles etc. is already done for you.

I don't like reinventing the wheel, I'd rather focus on the business logic.

seanwilson 2 days ago 1 reply      
If you're planning to make money from it, try doing a good draft of the launch page first. This helps you focus on which features are critical and which are just nice to have that aren't big selling points.

Also, don't obsess about making the code and architecture good. Get it working to prove the idea works then using what you've learned you can go back and improve it. I see so many side projects fail because many coders obsess about making code perfect over more important things. Releasing a project with imperfect code is vastly better to never releasing anything because you procrastinated trying to write perfect code in my opinion.

tixocloud 1 day ago 0 replies      
As someone who's going through this process myself, here are some tips:

- Have a clear goal about what you're building. If you don't know where you're headed, you'll end up getting lost.

- Start the research NOW. It takes quite abit of context switching between research and dev. The sooner you get a clear view of how to build it, the better.

- Use tools, frameworks, other people's code, etc. but consider the learning consequences.

- Layout daily goals and your roadmap for all your features. Put it in your calendar

kiraken 3 days ago 0 replies      
1-Use a to-do list. This might seem like a basic thing, but not many people know how important it is. It allows you to have specific goals everyday that you work toward. Also its very satisfying to checkout a goal :)

2- Work in 25-5 bursts. What that means is that you cut yourself completely from any disturbance, which include your phone, emails, social media, family members... for 25 minutes, that you dedicate completely for work. Then take a 5min rest. Its very effective and something that i do myself.

3-Hire a frontend developer or buy a ready made theme to only focus on the backend stuff. Since UI is very important.

Good luck with your project mate!

ptasci67 4 days ago 1 reply      
I would definitely say commit your timeline to paper/tracking software etc. I do this to myself all the time where I come up with a timeline and don't stick to it. I found that by having it front of my face (like I usually do at work) it helps me stick to it and let my mind wander less.

Also, I have found that at work it is ok if you get sidetracked sometimes because your guilt or sense of responsibility to your coworkers and company will refocus you soon enough. If you are like me, then you have no such thing when working on your own thing. For that reason, I highly recommend keeping regular, well defined work hours. I would even consider one of those apps that won't let you connect to FB, etc. while you work.

As far as technology goes, you can build a solid prototype website in anything these days. Pick the language you know best and also pick a solid foundation. By that I mean do as little as necessary to make the prototype work. Don't fall into the trap of using this as an excuse to try something new (if you want to actually get it done that is). Frameworks are great for this for example.

Good luck!

officialchicken 4 days ago 1 reply      
For software, create a plan to build what you'd normally code... preferably, something you want. Figure out how to sell it, how long it would take to build (time === money), the business model required including marketing plan to reach profitability, and whatever else you need to launch it. Then build a 10-20 slide deck with a designer about the idea (not a prototype), learn how to present it (don't waste it coding, let others do that in the future) and start pitching at least once or twice during those 2 weeks.

In the end, I hope you'll become a successful technical CEO and great company because you've learned a lot more than an API or two.

andersthue 4 days ago 1 reply      
Scope the entire project into half days worth of work, aim at being in flow for 2-3 hours in each block. (Unless you are not used/trained in being in flow, then the pomodore technique might be better for you)

Lay out the entire 20ish blocks and post them here/email to your friends and family or to some other entrepreneurs that you do not want to dissapoint by not getting stuff done.

Every day, update the post/email with a status, did you get the blocks done and if not why not, what did you learn and what will you do differently tomorrow?

Good luck!

seivan 4 days ago 1 reply      
Be careful not to fall into the notion that you have unlimited time. Don't get obsessed with small details that take too much of your time.

You should work each day like you're going back to the office in 2 days.

seeing 2 days ago 0 replies      
Build only 1 feature, only 1 page, and make it as appealing as possible before building anything else. Measure the appeal by number of users. Spend the first day launching, however far you get.
cheez 4 days ago 1 reply      
Don't build a prototype, build something shitty you're going to sell.

I did that once, a long time ago, and it took me on an amazing adventure.

wprapido 4 days ago 0 replies      
perhaps the best resource on starting up a business quickly is ''the 7 day startup'' by dan norris


check out http://7daystartup.com/ as well. dan occasionally throws a 7 day startup challenge where a bunch of entrepreneurs gather online and start a business in a week

jjoe 3 days ago 1 reply      
Build a prototype and then take 2 weeks off. You need those 2 weeks to talk to prospects, see people, and launch.
hbcondo714 4 days ago 1 reply      
Allocate some days to producing wire frames & mockups before development so you know exactly what your building
Ask HN: What features would you like to see in the next generation of DBMSs?
8 points by ajz  2 days ago   10 comments top 5
whatnotests 2 days ago 0 replies      
Having used RethinkDB[0] for a few things over the last year or so, I'm convinced that it represents "what's next" for DBMSs.

* The community is great.

* Documentation is amazing, and up to date.

* Examples actually work.

* Installation is simple. Runs on multiple platforms.

* Clustering is easy. Sharding is easy. Management is easy.

* Built for today's needs, not for what we were doing 30 years ago.

If you haven't yet taken a look at RethinkDB, do yourself a favor and spend a couple hours dinking around with it. You may just be impressed.

* [0] http://rethinkdb.com/

LarryMade2 1 day ago 1 reply      
Some tool for data upgrading/rolling back when doing updates. We got so many nice tools for programs, its about time to have a DB that could do as such... and versioning?
kristianp 2 days ago 0 replies      
How about one that supports a fast serialisation format such as Flatbuffers [1]? In the communications protocol. Json is so 2015 ;).

[1], https://google.github.io/flatbuffers/

PaulHoule 2 days ago 1 reply      
High flexibility. I want to have just indexes to do the queries I need to do with insane speed, effective compression of all data. More of a "database construction set" than an actual database.

Oh yeah, and something that is a cross between SPARQL and SQL 1999.

nonuby 2 days ago 1 reply      
Automatic restful APIs endpoints, ideally with watch (long poll and WS) paths too.
Ask HN: Where do you save your ideas?
22 points by megalodon  5 days ago   38 comments top 32
ttam 18 hours ago 0 replies      
I've been using google keep and it's been mostly great.*

It's free, it's simple and works in multiple platforms: Web, Android, iOS.

It supports tags, attaching images and, archiving notes, so you can keep your list clear.

I mostly use a note per idea. Before, when I used a txt/spreadsheet, I mostly had a 1 line per idea kind of organization, but it became impractical when my mind started going back to the same ideas with more thoughts.

* it failed on me when it had some sync issues..

MalcolmDiggs 5 days ago 0 replies      
For years I wrote all my ideas down in a spreadsheet. But once the list got into the hundreds of lines I figured "I'm never actually gonna build most of this stuff..." so I stopped doing that.

Now I keep a top-10 list only, in an evernote file. If I want to add something to the list, I have to delete something else. And the next time I have spare time to build something, I'll just have 10 good options to choose from, instead of a thousand terrible ones.

rl3 5 days ago 1 reply      
A text file called ideas.txt, one idea per line. I try to aim for just a stream of consciousness; if anyone actually read it I'd be quite embarrassed. The fewer formalities or barriers that exist between a momentary idea and writing it down, the better.

Ideally, I should have placed the file under version control from the start so I could reference when a particular idea came to mind, but I didn't do that.

My actual project planning docs are all text files though, and those actually are under version control. I find using a blank commit message works best because it lowers the barrier to further editing or writing.

LorenzoLlamas 1 day ago 0 replies      
Not sure why what app being used is relevant. Plain text is all we need to write anything like this. You could use Markdown if you must (and must you?), but whether you use VIM or emacs or sublime slime or something else, two things are clear:

You type in plain text (just like I'm doing here in this comments box) and jot down notes. Save it an ongoing text file (probably called 'ideas.txt' or you could separate them into 'personal_ideas.txt' and 'business_ideas.txt' and 'new_relationship_ideas.txt' (lol) if you need, and place all that 'org' stuff in a folder that auto-syncs to some service somewhere if you need cloud backup (dropbox, iCloud, gdocs, etc).

Standard iOS Notes app is fine if you are all in the Mac/iOS space routinely.

The only thing I do in terms of 'formatting' is to put bigger ideas in all caps and then indent (it's a tab!) for sub-notes and maybe put an asterisk if I'm feeling bulletproof.

So, like this:

from business_ideas.txt

* increase Twitter to 180 characters* publish corporate drone-like rants on LinkedIn* command-line movie time tool* dog walking service combined with GoPro/Vine channel for owners to watch 'best of' clips* invent a new "to-do" app and try to monetize it since text files haven't worked in 30 years* See if WordStar is for sale and revamp it for the Mac with lots of shiny glossy new icons* MOSQUITO FARM order breeds online build security fence to hide farm from nosy neighbors what about a super-mosquito cross-bred with a hornet? sell to labs who need well-trained mosquitoes for zika testing* refurbish old consignment shop as an "eBay shop"* frozen yogurt, but only for pre-teen girls in a "safe" environment (no boys allowed) and only in girl-like colors, but where we teach them coding, laser tag, and play songs from the movie 'Frozen' all day long. Name: Frozen Yog-Her? * record online python coding tutorial for beginners since there is not much available now

asteadman 5 days ago 0 replies      
n2dasun 4 days ago 0 replies      
A Google Docs file, so I can quickly open it on my phone or PC. The filename begins with 3 zeros, so it'll always show up at the top if sorted by name, and I can just type in three zeros to search for it in the event that I don't remember the exact name.
curuinor 5 days ago 0 replies      
I used to save my ideas, quite rigorously. Now, I try not to. Ideas are nothing, execution is everything, and execution is very much composed of things that you will remember, because they are so specific.
schlagetown 5 days ago 1 reply      
I use nvAlt on Mac + Simplenote on iOS.

Easy to sync between the two using plaintext files in a Dropbox folder. About as lightweight and easy to search for simple notes (whie still working on both desktop and mobile) as I've found.

Caveats: not great for longer notes, and keeps things super simpleso mostly great for collecting ideas.

I keep stuff here that I add to frequently; other things I typically move elsewhere to organize / editI love Scrivener for this but also use Google Docs for certain things.

ddavidn 5 days ago 0 replies      
I use Evernote. There are better tools for organization and prioritization, but I find that I get distracted by those things. So, I take it down in Evernote (or a Field Notes book if I'm AFK) so that my thought doesn't get interrupted by shiny things, then I copy it to Asana if it's work-related or just leave it in Evernote if it's a personal thought.
adzeds 5 days ago 1 reply      
I am interested to see some of the suggestions here.. I currently just leave things rattling around in my head...

I always tell myself I should document them on a Trello board then I can add notes to each idea when I think of things.

Trello: https://trello.com/

giltleaf 5 days ago 0 replies      
I organize most of what I do outside of work, including starting my own business and running my website, in google folders so it's accessible straight from gmail. I setup filters to automatically sort emails into various folders (boost traffic, various swipe files, books to read) so, for example, if someone sends me a cool article on hydroponics (something applicable to my business) and it sparks an idea, I just forward the email to myself and add "uvf swipe" to the subject line.

Depending on the folders, I visit them once every month or so, or almost never. It just depends what I'm into at the time, but I can always get them later.

When it comes to afk, I usually use evernote, but just as a basic notetaker that I can type up later.

ericzawo 5 days ago 1 reply      
Workflowy. I've yet to find a better jot-taking program, and have my entire life on there.
unimpressive 5 days ago 0 replies      
Combination of paper notebook, text files, and a program I wrote that acts as a probabilistic reminder list (https://github.com/JD-P/epiphanal). I found I was having trouble ever actually reading the giant project and ideas lists I'd write because you'd get to a certain number of items and there was no way you were actually going to read that entire list, even skimming it became a hassle. So I wrote this instead as an alternative where it feeds you a small number of items from a list at a time.
fitzwatermellow 5 days ago 0 replies      
Plain text files written using Vim in a Terminal. Then archived by folder to Google Drive or DropBox. I want them to be in a format I, and any machine, can read N years from now. I've been burned before by proprietary solutions ;)

I revisit old files at odd intervals. I have ~5 years worth of notes. What I love most is when I think I have a new idea, or stumbled upon original inspiration, and I find an almost exact sentiment mirrored years ago, albeit using different language. Then I know I've revealed some deep truth that will remain constant for me, and it is only my manner of expressing it that has evolved!

hanniabu 5 days ago 0 replies      
I used to save mine everywhere from emails, text files, to-do apps, Google keep, trello notebooks, and texting myself to random pieces of paper. What I use really depends on what's available to me at the time as well as the convenience.

Yesterday I just finished putting all my family cooking recipes into a single JSON file so they'll easier to digest. This morning I started on compiling all my notes to a single JSON file too, adding summaries, detailed explanations, tags, and categories. After I'm done I plan on making a nice Webapp to add, search, and view entries.

gasparch 5 days ago 0 replies      
Evernote. It proved so far to be the most useful. Especially because you can easily add tags to the notes.

When using 'clip to Evernote' browser extensions to add research materials you add same tags and then you have nicely linked together idea + research material.

I used to use index cards for storing ideas, but if you move often or just away from them - they are not so useful.

Hassle of digitizing notes are compensated by better availability.

For quick notes on a move I may use voice memo or voice note and then type in when I'm at the computer.

zo1 5 days ago 0 replies      
I use Trello. I have a board where I general store things, and happen to have a column just for ideas.

Also, have another column for things to read. Things to research/investigate.

tryitnow 5 days ago 0 replies      
Google keep. I've given up on any hope of organizing my ideas (at least in first draft form). The important for me is being able to enter them quickly and easily on any device and then being able to retrieve them quickly via search.

Organizing can come later once I refine the ideas.

The most important thing I have to keep in mind here is to include terms that are good for search (not too generic, otherwise they bring up too many results).

cableshaft 5 days ago 0 replies      
I use the developer diary Devarist nowadays, which lets you store things in Markdown, and I periodically export those entries to a single local markdown file. I prefer the searching and organization (and always online) aspect of Devarist, but I don't want to lose my files either.

I also include little icons that represent the category so I can visually browse and filter pretty quickly and easily as I scroll through it.

beshrkayali 5 days ago 0 replies      
Depends on what field the ideas are concerned with but my short answer would be: personal journal, evernote, or Google Docs (now switched that to Quip)
yuvrajsinhs 1 day ago 0 replies      
Notepad. Sometimes, my mobile phone.
stephenr 5 days ago 0 replies      
I have mostly used notes.app on iOS/Mac synced via iCloud (I have both short ideas and more fleshed out concepts in there)

Recently I've been experimenting with markdown documents in a git/hg repo. I haven't quite found an iOS vcs+markdown editor I'm happy with though, so it's not a full migration from notes.app

kek918 5 days ago 0 replies      
When these moments of clarity arise I immediately open Simplenote[0] and type it down (unless im busy and forgets it).

Simplenote mainly because I never found a satisfying way to sync my txt files across all devices

[0]: http://simplenote.com/

robodale 5 days ago 0 replies      
In a Google docs file called "UN-Validated Ideas". Unless I've presold an idea to other people (and have their money in-hand), those ideas never make it out of that file.
bsnux 5 days ago 0 replies      
Emacs org-mode. Notes are plain text are they can be exported to HTML, PDF and LaTeX. Google Drive and Dropbox folders help me out to read my notes from anywhere.
pattu777 5 days ago 1 reply      
I use Wunderlist. I have created a new list for ideas and save each one in that list. I have also added priority and reminder for some of those ideas.
supersan 5 days ago 0 replies      
Google drive: in a big folder named ideas with sub-folders like B2B, B2C, Fun, etc (doc files inside each sub-folder).

It's also easy to sync and access on all devices.

wcchandler 5 days ago 0 replies      
I have a 7"x4.375" notebook that's been lugged around for over a decade. Small, convenient and practical.
banterfoil 5 days ago 0 replies      
I am a student so I have access to private Github repos. I have a personal repo that contains stuff like this.
zhte415 4 days ago 0 replies      
So many apps...

I email myself. A movie recommendation to a really really good idea.

Simplify and reduce.

MattoRochford 5 days ago 0 replies      
Mixture of Evernote, iOS Notes and physical moleskin notebooks.
tmaly 4 days ago 0 replies      
Google Keep or Trello if its project specific
Ask HN: What are startups working in field of Bionics and Biomechatronics?
5 points by ak93  3 days ago   6 comments top 3
officialchicken 3 days ago 1 reply      
A lot and not enough. My guess/hope is 40% of south Florida startups? 80% of Minneapolis St. Paul startups? 33% of San Diego startups? Look around those locations and Boston.

I used to do surgical AR. The immediate-now-future is nanodevices, rDNA pharma / gene therapy, and more exotic chemistry. Hardware and software only play a supporting role and smaller role in the final clinically approved therapy. No matter your background all require organic, molecular and various biochemistry or medical skills - probably not as much mechanical engineering as you hope now that CRISPR is here.

somesaba 3 days ago 1 reply      
I was thinking about this today. Neuroprosthetics with feedback is the most exciting. The type where people can actually sense touch on the prosthetic limb...but it's probably still in the "research" phase. Any startup trying to do this may need to work with a doctor. You may also need to do surgery to access the nerves...or maybe there's a better way..

I'd love to work on something like this too!

wprapido 2 days ago 0 replies      
israeli re:walk is perhaps the biggest player in the exoskeleton field
Ask HN: How often do you commit / push in Git?
17 points by obfuscatedgeek  5 days ago   33 comments top 26
jtfairbank 5 days ago 0 replies      
I'll commit for small, incremental changes. Each commit is a semantic change to me- could be a small change applied in the same way across multiple files, or a larger change in a single file that does one thing.

I tend to push at the first opportunity it makes sense for other people to see my code, and then push again whenever I make enough incremental progress towards the feature to share. Our team has a culture of opening "in progress" PRs early and often to get feedback before we are too far along. This is great to share ideas and feedback about how things should work (instead of just about how they do based on implementation). It also helps keep the final code review size / time down.

seren 5 days ago 0 replies      
You need at least an atomic change, i.e compiling/testing/deploying at that point makes sense.

If you just updated a typo in some comments, it could make sense to commit it and it could take 30 seconds.

Now if you are always committing as frequently, either you are working on very easy tasks with no dependencies, either there is an issue.

victorbello 4 days ago 2 replies      
I use feature branched for everything, usually named after an issue number. I created a script that allows me to commit whenever I get a task done, not the whole feature, and that script takes care of adding the files, committing them with a message, tags it with the issue number (current branch name), and pushes to remote. That way, every time I save, the changes are saved on the remote GIT repo in case my computer dies or something.

Here's the code in case you wanted to use it:



 if git diff --exit-code --quiet then echo "There are no changes to save, NONE!"; else echo "Stage everything for commit -------------"; addit; # an alias for "git add -A ." echo "Commit all changes with message $@ --------------"; commit "$@"; #commit is an alias for "git commit -m" echo "Push branch to remote --------------" psh; # an alias for git push origin $(git branch | grep "*" | sed "s/* //") fi

Use it like this: savework "COMMIT MESSAGE HERE"

cyphar 4 days ago 0 replies      
I usually commit whenever I've done one thing that builds and is the smallest amount of change that is still a self-contained change. For example, changes to package scripts, the code and test cases all live as separate commits. The most important thing to do is to make sure no commit breaks the build and that the commits are small enough that someone can follow what they are doing when they're bisecting in the future.
brianwawok 19 hours ago 0 replies      
Once per feature or major change. Smallest would be a 1 liner that takes 10 seconds. Average maybe 1 hour. At the end of 1 day I commit and push to a private branch just in case my laptop bursts into flames overnight.
lsiebert 2 days ago 0 replies      
Only once so far: https://github.com/git/git/commit/75d2e5a7b038debee406805c9e... is my git commit ;-)

But seriously, I commit regularly, and rebase locally before pushing, whenever possible.

It's not really about how often you commit, it's about documenting that commit as a single unit of work so looking at it it's clear what you did, and why. This often requires planning ahead of time, and even possibly creating a separate branch just for off topic commits that you think of while working on the same file.

I'm not perfect though, it's okay not to be perfect.

bjourne 2 days ago 0 replies      
> and hired an external consultant to get in order.

Recipe for disaster. :p

> knew people who pushed / committed like every 30 seconds

Pushing and committing is completely different actions in the git world.

If it's a simple fix then I try to commit and push almost instantly. If it is a large piece of work that needs several days, then I "checkpoint" it by committing at least once/day.

But I try to never checkpoint by committing something that breaks the build or unit tests. Like if my work is rewriting module A to B, then my first commit would be to add module B, second to change all dependencies from A to B and lastly to delete module A from the repo.

cauterized 3 days ago 0 replies      
I commit every time I complete an atomic unit of work. Write a 3-line test and a 3-line method that passes it? Commit.

Working on something that will take a week to be atomically complete and testable? (For instance, a major refactoring.) I'll write myself a checklist of steps and commit every time I complete a step.

As someone else said, once every 30 sec is too often, and once a day is too infrequent if you're coding 8 hours a day. When I'm in a rhythm I'll typically go anywhere from 10 min to 2 hours between non-trivial (e.g. typo-fix) commits.

I do not push every commit immediately. Once a day is a good minimum as a backup strategy and if you want to make sure you can work on the codebase from elsewhere or if you have a CI system to warn you of merge conflicts.

I'll also push whenever I complete a ticket (for long-running branches we typically have sub-tickets, or I'll push when I've completed work that someone I'm sharing the branch with can build on.) Git makes it easy to develop those units of work on separate branches, and when you merge them back to the feature branch is generally a good time to push.

tedmiston 2 days ago 0 replies      
I find it varies with the work being done vs. relating to a discrete time duration.

In general, I try to be very atomic. As an added benefit, this makes it simpler for someone doing a git bisect later.

Fixing minor typos or copy changes across a few files could result in several commits within 15 minutes.

Working on a major feature that requires research and definition and a lot of conversation or feedback, might mean a few commits over the span of a few days.

denniskubes 5 days ago 0 replies      
We use a fork model where each developer has their own fork of the "main" repository and the developer fork is cloned to the local dev machine.

Using this model I do work in progress commits as needed for different features using many different branches. Those wips and committed locally and are pushed to the remote fork many times per day for backup. For example I can do a quick push before going to lunch or meeting. I can also fetch, rebase, squash, and force push commits as desired because the only history I am affecting is on my own fork. The final merge to the "main" repository is usually 1-2 commits squashed from all the wip commits. Once that is merged I, since I am usually working on a feature branch, I can delete that branch locally and in the remote fork.

Every 30 seconds seems like a bit much, but it wouldn't be unreasonable to say I commit and push 10x a day.

BWStearns 4 days ago 0 replies      
Depends. If it's just the beginning of a project or a side project where I'm definitely the only person working on it then I generally just use it as a backup system. If it's a more substantial project then I try to remember to commit and branch off before embarking on new feature additions, major refactors, or really anything where several hours in you could find yourself cursing and deciding that particular adventure was ill advised or is currently not worth it.

I'm not sure there's a generalizable pattern there for which has a lower actual time interval between commit/pushes but I suspect that I tend to be spammier with them in personal projects.

TheOtherHobbes 4 days ago 0 replies      
Incrementally, every time I make a small but significant change. I treat it like a super-save, so I can get that latest slice of work back if the disk on my dev machine dies. (The dev machine is currently a Linode.)

30 seconds is too often. Once a day isn't often enough.

masukomi 4 days ago 0 replies      
> I'll commit for small, incremental changes. Each commit is a semantic change to me- could be a small change applied in the same way across multiple files, or a larger change in a single file that does one thing. - jtfairbank

I agree with that but i'd add that i'll also commit at any stopping point. Need to leave for work? Commit. Need to go home ? commit. Doesn't matter how broken the code is at that point. I'll rebase the ugly commit away. Usually the ugly commit will have a message like "INTERIM COMMIT - REBASE ME"

I'll also happily push these ugly commits to a topic branch on a remote machine for backup purposes as long as I know that no-one else is working on that branch.

Raed667 5 days ago 0 replies      
I commit when I add a feature, fix a bug, anything that "feels" like an incremental step. I try to commit as much as possible so I can revert without losing much work.

I push whenever I'm about to shutdown the laptop or by the end of they day.

tokenrove 4 days ago 1 reply      
When developing something new, I make tons of tiny work-in-progress commits, sometimes dozens in a day, and frequently go back and squash them with rebase into a logical flow of changes, once it's more clear what that logical flow really is. I keep my WIP branches around locally for a while so I can go back and dig out the experiments I made along the way.

I prefer this over trying to get every commit right the first time. I also feel there's a nice change of pace in the process of stepping back, looking over the previous work, and shaping it into something that communicates the ideas well to reviewers.

mycroft-holmes 4 days ago 0 replies      
Let's be honest, that consultant has never pushed a line of code in their life.

You're probably committing and pushing at acceptable times. Screw the consultant.

MalcolmDiggs 5 days ago 2 replies      
I use Scrum and I usually commit about once an hour. More if I'm just bug-fixing or correcting typos or adding comments.

Committing every 30 seconds seems like it would knock me out of my flow so often that I wouldn't get anything done.

That being said, if I'm working in the same files as someone else, I'll commit every few minutes (and so will they) so that the amount of conflicts we're creating don't get out of hand.

Grue3 4 days ago 0 replies      
Commit amend for small changes.

New commit for new logical "part" of feature.

Rebase interactive when feature is "done" (in some way) to fix commit messages and squash some extraneous commits.

Push (as a branch in forked repo).

Sometimes I push before the feature is complete for backup/accountability purposes, but then I rebase anyway and push force the thing once it's done.

quintes 4 days ago 0 replies      
check in when it makes sense. In a feature branch? whenever you like as long as it's building often. In a dev branch directly? often enough so change gets into test regularly but not so often that your small change sets break the build our functionality other devs may also be working.

push and push regularly, in case you have merge conflicts. Get the continuous integration server building on commits and please have it email the team when the build fails too.

doque 5 days ago 0 replies      
I commit everything that I want to be able to recover/share. If it's necessary to share (e.g. open a pull request), or if I want to have a distributed backup of my work, I'll push.
Diti 4 days ago 0 replies      
I commit all the time, even for minor changes and uncompilable code. But I do this on a WIP branch, which I rebase onto my main branch at the end of the day.
Redoubts 4 days ago 0 replies      
To my private branch? As often as I feel I need to feel safe about backing up the changes I made.

How often do you press "Save Game" during a new level?

rabee3 4 days ago 0 replies      
I commit my changes as little checkpoints of the progress of my work, once a feature or a bug is done locally, I push it for people to review.
rahulgr8888 5 days ago 0 replies      
I definitely commit at the end of the day. you should have everything you did in a day on some backup other than your dev environment
masters3d 4 days ago 0 replies      
Scrum is not about the how, as long as your are getting your stories done. Something seems off.
CiPHPerCoder 4 days ago 0 replies      
Approximately once or twice per hour.
       cached 9 March 2016 13:05:01 GMT