Ask HN: How to get back to web programming after a 8-years break? - <AUTHOR> I was a full-stack dev in a Californian startup in 2012. I knew ES6 and CSS's specs by heart. Except for the "ensure IE6 compatibility", life was simple and vanillaJS was still a thing. AngularJS was the default choice, and Laravel was the cool framework to do backend stuff.
I became CEO of a SaaS startup and stopped programming for the past 8 years. I now want to get back to developing my own projects on the side, but the world has become way more complicated.
My goal is to develop simple SaaS products, mainly for my own needs. Think of vertical todo-lists, connect a few APIs, etc. Mobile accessibility (PWA or native) and having a nice design are a must for my future projects. Back in the time, my strengths were in JS, PHP and Python.
I've tested no-code platforms (Bubble.io, Glide, etc.) but I was quickly limited by the lack of flexibility. Is the world in 2020 easier to integrate designs? Do we really have to learn npm/jenkins/docker/etc. for small projects?
Any advice on where to start? :) <comment><USER2> You haven't missed anything and your skills are still relevant if you want to _solve problems_.

Laravel or Python with server-side rendered pages is still perfectly valid and will be better than the majority of websites today. People who say otherwise have their career at stake because they know nothing but React and need to use it everywhere (regardless of whether it's necessary) to ensure their survival.

You don't need Docker either. It helps in some cases but also adds an extra layer of abstraction and moving parts so I'd avoid it when possible. If your app just relies on a database and maybe a cache server it's easy enough to install those locally without Docker.

<comment><AUTHOR> Thanks a lot!

</comment></comment><comment><USER3> If you are good at ES6 and css, then you're halfway there. You can build a full stack web application if you know JS with the help of some frameworks. My personal preference for a JS frontend framework is React and for the backend, I prefer express which runs atop node. It is definitely easier in 2020 to develop a web application but the JS ecosystem is too fragmented these days so avoid the shiny object syndrome if you're serious about making something. npm is a module registry and you can pull in 3rd party dependencies for your app from there, so yeah you might have to learn to navigate your way around it. jenkins and docker are not so necessary in the initial phases as you can offload CI and Cd to SaaS providers such as netlify but the pricing of these providers is steep so you might want to move on from them.

</comment><comment><USER4> I find Django a good place for rapid development, Laravel is also great and cranking out new features all the time, but I feel the rate of change is too high for me.

There's lots of options for frontend but since you wrote "Mobile accessibility (PWA or native) and having a nice design are a must", there's no way around than digging deeper into frontend / design. I haven't seen a no-code tool (a la Webflow) that translates to good code for larger projects. On paper probably Ionic would fit what you want, but I feel the development experience quite lacking. I'm using Flutter for my mobile apps, and starting to use more and more of Django for backend / full stack (I used to use Laravel, then later Symfony extensively, and they're both still fine options I think).

<comment><AUTHOR> Ok, glad to have a python-point of view. Why did you switch from Laravel to Django? I prefer to use Python than PHP, but except for data-science stuff, I never used python for web dev. I suspect that the learning curve is not that steep?

</comment></comment><comment><USER5> These roadmaps (especially frontend) might be helpful:

[https://roadmap.sh/roadmaps](https://roadmap.sh/roadmaps)

<comment><AUTHOR> Thank you so much! The visualisation makes it very clear to see where I stand. I love it. It's funny to see how much has been developed after the "Build Tools" section in those past few years. Most of the technologies were in beta a few years ago.

</comment></comment><comment><USER6> Laravel is even more popular now.

I'd checkout Laravel again, Laracasts.com might be a nice place to start.

If you liked Angular checkout Vue and Alpine js.

Good luck with your SaaS.

<comment><AUTHOR> Thanks! I think I'll go with Laravel indeed. Vue.js looks more adapted than React, but would that be a bit more difficult to develop a mobile app with Vue than with React (using React Native)?

</comment></comment><comment><USER7> Fundaments haven't changed much. Pick a JS framework and go from there. It's gotten more complicated, indeed. But, if you're building projects of your own, you're free to ignore it as there are not that many palpable benefits, and your users / customers couldn't care less about underlying tech stack.

<comment><AUTHOR> Eactly. I was targeting personal ease of use. I remember that handling authentification in JS was a pure nightmare, so I have a strong bias towards frameworks handling that for me.

<comment><USER7> 80% of cases, you don't need a framework.

</comment></comment></comment><comment><USER8> Id start with Freecodecamp - you dont have to complete the modules but chose the ones relevat to you

<comment><AUTHOR> Ok thanks for the link!

</comment></comment><comment><USER9> Laravel is still awesome and VueJS is really popular with Laravel devs right now (afaik). Vue is super easy to work with and there's a ton of documentation and examples for integrating it with Laravel. If I were in your position, I'd go with that stack.

<comment><AUTHOR> Perfect thanks. I'll go with Laravel. I still have a question about how Vue does on mobile, but a quick search for Vue.js made it clear how easy it is.

</comment></comment><comment><USER10> way more complicated how?

<comment><AUTHOR> This article relates really well my feeling now: [https://hackernoon.com/how- it-feels-to-learn-javascript-in-2...](https://hackernoon.com/how-it-feels-to- learn-javascript-in-2016-d3a717dd577f)</comment></comment>


You have no option to disconnect Facebook account from Spotify - <AUTHOR> https://community.spotify.com/t5/Live-Ideas/Facebook-Remove-Facebook-from-a-Facebook-created-Account/idc-p/4581615 <comment><USER2> Not only can you not disconnect it, but it's the only way it can work now. I had a problem with my Spotify account, and the first thing the support rep did was make me connect it to Facebook because he said he couldn't fix it until it was connected.

So my many years old account just got forced to be connected to Facebook last month.

<comment><USER3> What if you don't have a facebook account at all?

<comment><USER4> I don't have Facebook and have Spotify... No problems</comment></comment></comment>


A very sad day – the end of Linux Journal - <AUTHOR> http://blog.lerner.co.il/sad-day-end-linux-journal-2/ <comment> iam-TJ Wouldn't a link direct to the source be more appropriate?

[http://www.linuxjournal.com/content/linux-journal-ceases- pub...](http://www.linuxjournal.com/content/linux-journal-ceases-publication)

</comment><comment><USER2> As someone who's been waiting 90 days for payment for an article I wrote for them, this may be a sad day for me indeed.

</comment><comment><USER3> Very sad indeed, a piece of history gone.

</comment><comment><USER4> Here's link to digital versions of magazine and archives: [http://lj.mybigcommerce.com/categories/Back- Issues-%252d-Dig...](http://lj.mybigcommerce.com/categories/Back- Issues-%252d-Digital-Downloads/?sort=newest)

Anyone can help by buing something. They should start kickstarter or donations.</comment>


London Taxis To Record Passengers via CCTV by 2015 - <AUTHOR> http://www.independent.co.uk/news/uk/home-news/cctv-taxi-plan-a-staggering-invasion-of-privacy-6262221.html <comment><USER2> The article says Oxford taxis, not London taxis.</comment>


Show HN: Tinfoil Security -- Security For Startups. Launching soon - <AUTHOR> http://www.tinfoilsecurity.com <comment><AUTHOR> Hi! I'm borski. I'm working on Tinfoil with sbisker and ainsleyb. I've been doing security for a few years.

One thing I've noticed is that, all too often, smart people build websites that have major security vulnerabilities; usually, these are easy to fix, but they'd rather spend their time focusing on building out their product than worrying about security. As well they should.

Tinfoil allows you to worry about your product, not your security. We provide automated scans of network and web vulnerabilities with our custom-built crawler and fuzzer, displaying the results to you in a manner you can understand. You shouldn't have to be a security expert to understand how to fix common vulnerabilities and why fixing them is important.

Let us know what you think!

<comment><USER2> Why did you choose to write your own crawler and fuzzer? Wouldn't it have been easier to use Wapiti, Nikto, Nessus, and W3af with a lightweight SaaS wrapper of your own?

<comment><AUTHOR> We're doing both, actually. There are some things we're doing that are fairly unique, but part of the scanning system is in fact wrapping already existing tools.

It's the unique parts that are custom-built. Finding 0day is hard with the existing tools. :)

</comment></comment></comment><comment><USER3> Really looking forward to what 'borski manages to do with this. This has been a crazy-making problem for me over the last few years on HN --- we get calls from lots of very early startups who just can't possibly afford the going rate for software security work.

</comment><comment><USER4> Is this for websites only? Or will you be able to work with other types of products such as desktop (OS X/Windows/Linux) or mobile (iPhone, Win Phone 7, Android)?

<comment><AUTHOR> At the moment, we're only looking at website and network vulnerabilities for the server hosting the website.

The plan is to eventually expand to other types of products as well, but all in due time. We particularly have lots of ideas on how to secure mobile apps. :)

</comment></comment><comment><USER5> Looks very useful, I have next to no security knowledge past the basics.

Whats the business model? pay first or pay for the solution?

<comment><USER6> At the moment we're looking at a pay first business model. We will be tailoring results and recommended solutions to your stack.</comment></comment>


Free Acronis True Image 8.0 Personal - <AUTHOR> http://www.allacronis.com/personal.php Download Free Acronis True Image 8.0 Personal and convert it to full version Acronis True Image Home 2009 just for $29.99!!! <comment><USER2> Looks phishy to me.</comment>


Chameleon - UIKit for Mac development - <AUTHOR> http://chameleonproject.org/ <comment><USER2> I really don't get the point of this at all. When I've ported iPhone apps to iPad (i.e. make them Universal) there was always little-to-no work to do on the underlying model classes, but always a lot of work to do designing new views since the UI model is so much different (mainly from the bigger screen). Same deal with Mac OS X, except the UI changes are even more extreme. If I want my iOS app to work on a Mac's screen, I'll have to spend the time to redesign the UI. Which is fine, so how is this thing going to save me any time at all, really?

<comment><USER3> It could be useful for lots of folks that know UIKit inside and out but haven't dealt with AppKit before.

<comment><USER2> But a Mac's interface is not an iOS interface. There are different constraints and different best practices, and sometimes completely different widgets. To make a decent UI, you have to understand the native platform.

<comment><USER4> Sometimes perfect is the enemy of the good.

The ability of a stopgap measure such as this is a good way to let established iOS players test the Mac waters without a huge investment.

</comment></comment></comment></comment><comment><USER5> Right after opening, the app store seemed flooded with programs that had UIs that clearly showed their iOS heritage. And I've yet to see a singly one where this actually is good (no, Twitter for Mac isn't one). Going further along this road doesn't seem like a good idea to me. Yes, you'll save some time. But unless you're making a throwaway, gimmicky application, you'd better invest some time in creating a new GUI that'll better integrate into the desktop. This time, most likely you're not the only thing on the screen.

<comment><USER4> There is huge value in "throwaway" applications.

The decision to spend considerable time to even test the Mac market is a huge barrier to entry. This would be a good stepping stone to prove that there is an audience there.

<comment><USER6> Providing a poor quality application doesn't necessarily tell you anything about the audience a proper port would have, it can be significantly damaging to your brand, and is a waste of press attention.

<comment><USER4> Doesn't _necessarily tell you anything_. But it can. If you can find for 4-5k that "Yeah, people will buy stuff on mac like our iOS stuff, pull out the whole hog" it makes an excellent business case.

Also, not everything is brand based. For many things, removing the old thing from the store completely obliterates all mention ever made of it (as it wasn't the sort of thing that gets press attention anyhow).

Not everyone is selling apps that make 6-7 figure incomes. Many people are selling multiples that rake in 4-5 and doing quite nicely with that, and with no marketing.

</comment></comment></comment></comment><comment><USER7> Am pretty excited about this -- I have an iOS app that would work great as effectively a desktop accessory on the Mac.

Unfortunately the UIKit implementation isn't there yet -- there's no NIB loading, table views aren't editable, etc -- though what is done is very impressive. Will be watching this one.

</comment><comment><USER8> Definitely a cool, will make porting iOS apps easier. However, a lot of the ideas in UIKit are meant for a touchscreen and wont translate well.

<comment><USER9> Sure but it's all in how you use it. Not everything comes over cleanly but a lot does. AppKit is old and crufty and doesn't play well with Core Animation. Since Chameleon is Core Animation-based, it's already off to a better start than AppKit.

</comment></comment><comment><USER10> Everyone here is missing the point, this is not exactly meant for direct ports of iOS applications to Mac OS X. For example, look at Twitter for Mac and Twitterific in the Mac App Store, they aren't direct / touch-based ports, but rather, they take cues from their iOS counterparts.

</comment><comment><USER11> Fascinating idea, but as also mentioned in the article: _won't Apple do something similar?_

There are way more iOS developers than there are Mac developers, and many more flock to the iOS platform every day. Surely, Apple has some incentive to make it easy for iOS developers to make software for the Mac.

From the article:

      Apple already has a version of UIKit that runs on the Mac:
      every time you launch the iOS Simulator,
      you're using that framework.

<comment><USER9> I know right? You'd think Apple would do this themselves but for some reason they haven't show any interest. Especially weird considering AppKit is so old and crufty.

</comment></comment><comment><USER12> _Of course, Apple executives may change their priorities when they see how many developers are interested in a tool like Chameleon. Many people have speculated that the popularity of the Jailbreak SDK accelerated the release of the original iPhone SDK. It would be great if history repeated itself._

Great, so they're trying to position themselves to take credit for what may be inevitable.

<comment><USER13> Aren't you way too cynical?

<comment><USER12> I guess i should say: Chameleon looks great, and I applaud their work. I just pulled the only quotation that peeved me.

In regards to your question, cynicism involves a belief about someone's motivations, and I'm only going off of what they have put in black & white: that it would be so awesome if they were able to repeat the most spectacularly dubious credit-taking in iPhone history. I realize that those 4 months between the availability of the first iPhone and the announcement of the official SDK were agonizing and suspenseful, but I don't believe for a second that the most notoriously secretive tech company didn't already have an SDK in the works. If I were iconfactory, I wouldn't labor to connect myself with that event.</comment></comment></comment>


Ask HN: How to legitimize your qualifications if you don't have a degree in CS? - <AUTHOR> I started learning how to code in my first job, but I have no formal education in Computer Science (I was a business/math major). How do I legitimize my qualifications so that I can get hired in the future in data science/comp programmer roles? <comment><USER2> You don't need a degree. You have already had your first job, you've got experience, that's far more important and most employers know that these days (though certainly not all).

If your resume is only one job deep, add a few sections with skills/talents/etc. and throw in the names of anything you'd be prepared to back up if anybody asks you questions about it in an interview.

Some places, particularly bigger ones, will still probably bug you about the lack of an education section. Explain to them that you are confident that being self taught and having some previous professional experience you are completely qualified to do job X. They might not agree with you, if that's the case, then trust me, you didn't want that job.

That said, everything I just wrote applies primarily to software engineer roles, the Data Science crowd is going to be more of a stickler for degrees 'cause they're all old fashioned like that.

<comment><AUTHOR> "'cause they're old fashioned like that" ^ lol. Good point.

Thanks for the advice! I value experience too, but I've found that in my previous industry (actuaries/insurance), they didn't really value experience as much as exams or education. I'm glad software engineer roles are different!

</comment></comment><comment><USER3> I too didn't have an undergrad in CS but was pretty comfortable as a web dev and sys admin. I ended up getting a MS in Computer Science which definitely took my career to the next level.

What I discovered was that while my day job had prepared me well for actually doing the work, my CS degree taugh me how to interview well and get the next role up.

What I mean is, interviewers tend to focus on many theoretical topics and are looking for the "correct" answer often..some key words that they want you to utter as part of the answer.

My CS degree taught me how to talk educated about technology, algorithms, software engineering, project management etc while my job actually taught me how to do it.

<comment><AUTHOR> What was your undergrad in and what kind of challenges did you experience while pursuing your MS? How many years of CS experience did you have before you went for your MS? I've been thinking of this as a possible and very probable path (I'm an international student here in the US, so I might have to get a masters for my visa to continue). Thanks!

<comment><USER3> I only had about 3 years of work experience when I decided to take up my MS, something that also helped my VISA application. There are different MS degrees out there and I chose one with lots of applied subjects rather than theoretical/academic (i.e. design patterns, project management, security, data modeling, analytics, OS fundamentals etc.)

My undergrad was in Economics and Fine Arts (sculpture/drawing) and my plan was to later apply to Architecture School but my programming hobby just seemed like a more wise pursuit.

<comment><AUTHOR> Very cool! I will look into those MS degree options - I didn't know that there were so many options. Thanks for sharing your experience, I really appreciate it!

</comment></comment></comment></comment><comment><USER4> 5 years of professional experience is usually seen as equal to having a degree. You learn a lot in 5 years as software engineer.

You can of course get a degree in CS later in your career (you can work on a degree remotely while having a job).

There are also online courses you can take.

And you can also create some respected open source project or library in data science field which will be a solid proof of your competence in the area.

<comment><AUTHOR> Thanks for the advice!

You suggested online courses - do you mean bootcamps and things like Codecademy, or actual college online courses?

</comment></comment><comment><USER5> Go get a degree, no shortcuts in life</comment>


Ask HN: What made JavaScript so popular? - <AUTHOR> Compared to other programming languages and frameworks out there (JavaFX, golang, PHP, Ruby on Rails), what made JavaScript so popular? <comment><USER2> It's the only language that runs in your web browser natively. It was designed to be a simple scripting language to make web pages interactive. Written by Brendan Eich, it was a quick project that should feel like C but be easier to learn. It doesn't require you to learn about types and type safety which is a topic that can be hard to grasp. It's functional and expressive, and those two things make it fairly powerful. Finally, it has the backing of NodeJS which runs on the server so, as was previously pointed out, means you can write code for both the server and client in JavaScript so it's portable.

While it's debatable how easy JavaScript really is, most developers who bitch about it love it. It has its flaws, like many other languages, but I'm still surprised by the number of newer and better ways to do things in plain old JavaScript.

</comment><comment><USER3> It's mostly part of everyone's dream of using the same language for frontend and backend code. When Node/NPM became popular and built up lots of useful libraries and could be used for backend code, people started trying to use Js everywhere. It helps that a lot of the ecosystem is based around asynchronicity.

</comment><comment><USER4> Its the only language that runs in all browsers.

</comment><comment><USER5> that it works in the browser</comment>


How to share data with a statistician - <AUTHOR> https://github.com/jtleek/datasharing

<comment><USER3> If you liked my guide to sharing data, you may also like my guides:

For writing R packages: [https://github.com/jtleek/rpackages](https://github.com/jtleek/rpackages)

For writing scientific reviews: [https://github.com/jtleek/reviews](https://github.com/jtleek/reviews)

Or on the future of stats: [https://github.com/jtleek/futureofstats](https://github.com/jtleek/futureofstats)

</comment><comment> loup-vaillant Before all that, you need to choose your statistician. My advice is: resuscitate E.T. Jaynes. Failing that, find one of his disciples. Failing that, find a Bayesian. Failing that, read _Probability Theory: the Logic of Science_ , and just do the analysis yourself. Failing _that_ , maybe a Frequentist statistician will do. Maybe.

<comment><USER4> And your Bayesian statistician will acquire their priors how exactly?

Bayesian statistics can be very powerful, but it would be a terrible idea to prefer Bayesian approaches to Frequentist ones in all situations.

<comment> loup-vaillant > _And your Bayesian statistician will acquire their priors how exactly?_

As If Frequentists somehow didn't need priors. _Everyone_ starts with prior knowledge. We might as well use it. Or do you advocate _not_ using every scrap of knowledge available to you? That would be stupid.

Sure, prior knowledge can be shaky, or difficult to justify. But at least, a Bayesian will be explicit about it, instead of, like, sweeping normal probability distribution assumptions under the linear regression rug.

> _it would be a terrible idea to prefer Bayesian approaches to Frequentist > ones in all situations._

Name three examples that doesn't involve the Frequentist using better prior information than the Bayesian.

By the way, Bayesians know that using probability theory correctly is sometimes intractable (combinatorial explosion and all that). In those cases, they will use approximations. But at least, they will _know_ it's an approximation.

\---

You really should read chapters 1 and 2 of _Probability Theory: the Logic of Science_. They give a good feel of why Bayesians are correct as a simple matter of fact.

<comment><USER5> Here's two examples:

I'm testing the effectiveness of a drug. Drugs of this class have a certain likelihood of working, the noise in my data is known, the experimental group did this much better than the control... does the drug really work? So far so trivial, in either Bayesianism or Frequentism. Now, I happen to mention that I tested 10000 variants of this drug and only sent data for the one that seemed to work. The rest aren't interesting after all. Under Frequentism, it's easy to take this into account. Under Bayesianism, it requires complex definitions of observations, and is easy to overlook as there's no space for it in the formula.

I have a collection of unfair dice. Unfortunately, they all look the same and got dumped on the floor. Now someone grabbed one off the floor at random and wants to make bets with me about it. Even experienced Bayesians are likely to mix up their propositions in a case like this. I say that from having read discussions of similar problems. Yes, if you do it right, it comes out correctly, but Frequentism makes sure you've thought about what you're asking in the same way Bayesianism makes sure you've thought about your priors.

Somebody else will have to give a third example.

Bayesianism and Frequentism are based on the same math, and math is math. If you use them correctly, they'll get you the same answer every time. The difference is what they make easy, and what mistakes they protect you against.

<comment><USER6> Third example: A researcher has millions of datasets to analyze, with each dataset containing enough data points such that frequentist asymptotics are satisfied. You are tasked with finding summary statistics for all datasets. The maximum likelihood and maximum a posterior (MAP) estimators are equal within some tolerance for a subset of these datapoints. However, the marginal likelihood function is computationally intractable, so the Bayesian must use expensive methods to produce MAP estimates, e.g. using Markov chain Monte Carlo (MCMC). For complex posterior distributions, MCMC requires careful programming and verification procedures, which can be prohibitive in practice.

There are very many real-world problems that have fast and accurate frequentist solutions, but slow and difficult Bayesian solutions. Despite my personal bias -- my research primarily relies on Bayesian inference -- I can't fathom how one can reasonably argue that frequentist approaches are always inferior, even in applied statistics.

<comment> loup-vaillant > _I can 't fathom how one can reasonably argue that frequentist approaches > are always inferior, even in applied statistics._

My original claim is broader than I wanted it to be. The fact is, a Frequentist approach will always be less _accurate_ than the correct application of probability theory. But of course,

> _Bayesians know that using probability theory correctly is sometimes > intractable (combinatorial explosion and all that). In those cases, they > will use approximations. But at least, they will_ know _it 's an > approximation._

[https://news.ycombinator.com/item?id=6793905](https://news.ycombinator.com/item?id=6793905)

The key to the Bayesian outlook is to remember that no matter what, there _is_ a correct answer, even if you can't afford to compute it. As Eliezer Yudkowsky put it, there are _laws of thought_. Want to use Frequentist tools? Sure, why not. Just remember that they often violate the laws of ideal though. Some inaccuracy inevitably ensues.

</comment></comment></comment></comment></comment></comment><comment><USER7> How does everyone feel about a JSON dicts separated by newlines format? (Like the JSON format that mongoimport can accept.)

Each sample of the type of data that I'm often dealing with tends to be nested in nature. Yes, I do have a script that can flatten out the nested dicts into a regular table, but that always results in a blowup into hundreds of columns.

Nice suggestion to share the raw data. I've never seen a researcher do that, I think many don't even save the raw data to disk before extracting what they want, but I always try to.

<comment><USER8> I've been using this format recently and appreciate the additional fidelity from simple rows. The flexibility makes it good for the raw stage, but I usually have to extract tidy subsets for real analytic work. I have written many little scripts to pull arbitrarily deep keys out of these structures and produce tidy tables for further analysis.

actually, this format is also nice because iterating over the lines of a file is very similar to running through a mongo cursor. that makes it easy to reprise choose to work with both inputs.

</comment></comment><comment><USER9> I'd like to follow this up with a plea to statisticians to make sure you're not sending data back to programmers with bizarre newline formats - <USER2> versions of Mac Excel save with /r newlines, which haven't been used in over a decade and pretty much break everything. If in doubt, it's probably best to save in Windows newline mode from MS software, at least most utilities are used to dealing with that.

<comment><USER10> I once debugged a case like that. A NumPy script expected to read in a table from a file, but the file used /r newlines, so the NumPy script read it in as a very long single line. Then later references to table lines >1 broke the script.

The strange part is, the file and the script were provided by the same person.

</comment></comment><comment><USER11> The Leek group is doing some fantastic things, pushing for better transparency and coding integrity from statisticians. I met with Jeff a little while back and was just really enthused by his desire to change the way traditional statistics/biostatistics is viewed and interacted with.

</comment><comment><USER12> Bit of a side-question but I have been looking for such a thing without really knowing what to look for: is there some kind of small and easy JS and/or PHP programm allowing to do some easy work on a tidy database? Pretty much like you would have a full excel table in a browser where you can add/modify/remove rows and columns? No need for all the excel formulae and such...

Thanks very much for any help.

<comment><USER13> Most databases have a companion GUI tool that will allow you to "edit" the database visually; what DB are you using?

pgAdmin (Postgres) - [http://www.pgadmin.org/](http://www.pgadmin.org/)

MySQL Workbench (MySQL) - [http://dev.mysql.com/downloads/tools/workbench/](http://dev.mysql.com/downloads/tools/workbench/)

SQL Developer (Oracle) - [http://www.oracle.com/technetwork/developer- tools/sql-develo...](http://www.oracle.com/technetwork/developer-tools/sql- developer/overview/index.html)

I strongly recommend learning some SQL though; this will give you the ability to bulk edit columns and apply formulae.

<comment><USER12> I was thinking TSV in plain text format, not SQL. Hence the option of a pure JS solution?

<comment><USER13> A TSV is typically referred to as a "flat file". You're going to get a lot of confused looks if you talk about a "TSV database".

That said, you can:

\- create an external table in an RDBMS (any of the above will work), which allows you to work on a flat file in place: [http://www.fromdual.com/csv- storage-engine](http://www.fromdual.com/csv-storage-engine)

\- import the TSV to an RDBMS, work with it, and export it again.

I'm sure someone has written what you're asking for, but I don't get the appeal. RDBMS aren't scary, you can install MySQL and work with it for free, and if you use the GUI tool you don't even have to touch SQL.

edit: Excel is a tool that can edit TSV files, and as a bonus it looks and works exactly like Excel. What exactly do you want?

<comment><USER12> I see. Well thanks for your answer. Maybe I know better what are the options now and what I'm looking for at all :)

As I say, the idea would be to edit a database/file directly on the web (i.e. no local excel file). Since the original post talked about TSV I thought there might be a niche for such a light JS editor.

</comment></comment></comment></comment></comment><comment><USER14> or just use R tools yourself</comment>


Ask HN: What's the status of Stripe's Ruby type checker? - <AUTHOR> About 9 months ago, Stripe announced they were building a type checker for Ruby called "Sorbet."  Haven't heard or seen anything since, and was wondering if anything has been announced that I may have missed, and/or if the project is still going to happen.<p>Reference:  https://news.ycombinator.com/item?id=17217815 <comment><USER2> Hey! I work at Stripe on Sorbet. Don't worry, you haven't missed any announcement. Stripe is still very much committed to Sorbet; it's used by hundreds of engineers every day to catch bugs and increase developer productivity. We're currently hard at work polishing Sorbet to make it mature enough for people to use outside of Stripe. It's not quite ready yet, but if you email email@example.com we'll have your email address so we can let you know when we do have something worth announcing.

Thanks for the interest in Sorbet!</comment>


Programmers' salaries at Google $250k (and up) - <AUTHOR> http://jacquesmattheij.com/Programmers+Salaries+at+google+250k+and+up <comment><USER3> HN has a curious relationship to money some of the time.

a) Many of us watched our classmates go into management consulting, investment banking, finance, medicine, law, etc. These are all fields where $250k is not exactly outlandish for a 29 year old.

b) We have a lot of friendly, accessible fellow posters who write computer code and are financially very successful.

c) We talk about $X million valuations and $YY million acquisitions and $Z billion IPOs the way catering company owners discuss the price of tomatoes.

d) We have heard many credible people complain of how difficult it is to hire and retain engineers. So difficult, in fact, that they'd pay $10k+ just for an introduction or $50k+ for an actual placement.

e) We understand incentive structures and equity grants exist.

f) We routinely read industry news like "Google and Facebook in heated war for talent", "The going rate for an acquisition-to-hire is $1 million per engineer", "Four large technology firms were engaged in a gentlemen's agreement to conspire against their employees until the government told them it was cartelicious", "Productivity per engineer is going through the roof", "Company Z supports Q00,000 paying customers per engineer", "Efforts of individual engineers have succeeded in adding millions to billions of dollars of value to some companies", etc etc etc, and generally seem to be at least as savvy as C-students in Microecon 101.

and yet

g) Talk of engineers receiving wages above some magic threshold is met with disbelief, scorn, and a wee bit of jealousy.

It isn't hugely interesting to me what any particular person at a particular company is making, but is $250k an outlandish total compensation number? No, it is clearly achievable. Do you have to be programming demigod to achieve it? No, compensation moves along with several different axes and programming ability isn't the main one. Is this anecdote a freak of nature which we'll never see again? No, signs point that this will become increasingly more common over time.

<comment><USER4> Spot on.

(d) in particular is worth stressing. There is no difficulty in attracting and retaining talent. There is simply an unwillingness to pay them what they're worth and give them an environment in which they'd want to work.

Supply and demand. It's pretty simple.

Yet so many (typically business types) want to treat engineers as an interchangeable cost center. "5 years ago an engineer cost $100k so I refuse to pay more than $100k now to keep my costs in check".

The fact that it's taken this long for engineers to be recognized (financially) for the huge impact we have and the vast differences that can exist between individual engineers speaks volumes about us. As a whole, we're just not as good as the business guys at this compensation game and, a lot of the time, it's not our primary motivation. Give us something interesting to do and stay out of our way and we're happy.

<comment><USER5> The reason why business types see engineers as cost centers is because engineers have positioned themselves that way. Engineers pushed for higher salary in lieu of the variable upside.

What engineers really need to do is to put more skin in the game. Push for more equity, even if it means accepting a smaller salary. All too often I see programmers who just want a 9-5 that pays 6 figures even if the company is seeing hard times, but that won't improve the situation. Most of those business types you mention see engineers in the same way that engineers see themselves: wanting a large, stable paycheck. The business types shoot for the large end of year bonuses, which in general only get paid if the company does well (ignore the TBTF banks for a moment)

As an example of what I mean, most celebrity endorsements are lump sum payments plus a very small variable upside. William Shatner, taking a longer view, pushed Priceline to compensate him (for his celebrity appearance) in the form of equity, and now he's laughing his way to the bank. In this case, he was willing to take the risk.

<comment><USER6> This isn't as simple as "push for equity". There are plenty of companies where equity makes no sense (say, a private consulting company, or a company with no plans to sell a la 37signals)

What other options are there? Guaranteed end of year bonuses? Commissions in the form of profit sharing?

<comment><USER7> It is funny that options are now so associated with a company exiting that we totally forget that their original purpose was as an efficient mechanism for profit sharing

<comment><USER8> I was thinking exactly the same thing, about the parallels between speculative bets on appreciation and dividends.

</comment></comment></comment></comment></comment></comment><comment><USER9> As a point of data, I work at Google and am at a similar point in my career. My base salary a year ago was $136k, but there was a companywide 10% raise last winter, and now my base is $150k.

You get a cash bonus each year that's around 15% of your base, but if you're a superstar it can be double that, or if you're a total disappointment, it can be nothing. But if I perform as expected, that's another $22k.

Finally, I was granted 300 shares of stock that vest annually over four years. So each year, I get 75x the value of a Google share. GOOG is trading around $600, so that's another $45k.

So my total annual compensation this year will be $217k. If I were bragging to an ex-employer, I'd probably round up to "a quarter million" too. :)

<comment><USER10> Adding to the data pool:

I'm also an under-30 engineer making ~250k in the Bay Area (at a publicly- traded gaming company, not at Google). My company has six pay grades for pure engineers; I'm at the second highest. My 2011 comp breaks down as follows:

* 166k base

* 45k bonus

* 35k stock grants (RSUs)

Note this does not include 401k matching, stock purchase plan, healthcare, or any other quantifiable perks.

When I took this job a year ago, I had a similar offer from a prominent NYC startup: ~220k (150k base, 30k bonus, 250k options over 4 years using offer- time valuation). I was 26 at the time.

For added context, I did not attend an elite school. I did not complete my undergraduate degree. I'm smart, but not extraordinarily so (800/710 math/verbal SAT). I interview well. I have a "disruptive" skill (cloud expertise).

<comment><USER11> Isn't a perfect math score very hard to get, something like the upper 1%ile? Do you know your IQ? I'm scandinavian and could do a traditional finance/consulting/management/accounting thing in my home country but the software industry seems far more fascinating. I'm afraid my 120 to 125 iq means I'm too stupid to do well in SV though.

<comment><USER12> No, you are not. The more damning trait would be believing you are not qualified because of a test administered when you were 8 years old (or worse, believing the results of any IQ test administered after that).

There are certainly brilliant folks around in the valley, who can grasp concepts faster and more deeply than seems human, but they are a significant minority.

The prime requisites for success as an employee in the valley are still:

1) Good judgement (which tends to come from accurate self-reflection and critique)

2) Love of learning (so it takes you a couple hours or even days to grok redis's failure modes instead of 20 minutes, who cares -- the question is are you going to learn it (and every other useful thing that comes along, for years))

3) Basic sociability (the valley is a small world, everyone knows each other, if you are a jerk life will get more difficult).

For a much more eloquent description of how to thrive as a programmery type in the valley, consider <http://www.cs.virginia.edu/~robins/YouAndYourResearch.html> but translate research into "generally useful skills for building stuff."

"You and Your Generally Useful Skills for Building Stuff." :-)

</comment></comment></comment></comment><comment><USER4> Let me add some perspective to this as both an engineer and a Google employee.

The first thing I'll say is this: people lie about their incomes. They even do this anonymously (Glassdoor, etc). Not that I'm calling (or even suggesting) this a lie but be very careful believing anyone's salary claims unless they show you an original offer letter, employment contract or a W-2.

I'm not even sure if they're simply bad at math, lying to themselves or lying to others. Whatever the case, they lie.

With respect to Glassdoor and similar sites, another problem is different people have different ideas of what "salary" means. Does it include stock? Actual bonuses? Expected bonuses?

Likewise it's a skewed sample. I kinda have my doubts that many principal/distinguished engineers have the inclination to accurately report their incomes on such sites.

That being said, my experience in the outside world is that your salary quickly tops out as a senior engineer, architect, whatever. The only way to increase it is to move into management.

While you can move into management at Google, you can go very far (in terms of career and compensation) being simply an engineer if you're good at what you do, get things done and have a lot of impact.

This compensation can take many forms (vested stock, base salary, annual and periodic bonuses, etc).

Also, Google realizes that after you've been here awhile you become increasingly valuable. This is true for an engineer no matter where you work. The cost to a company of replacing someone who has worked there for years is huge (both in recruitment costs and getting them up to speed). Google is simply the only company I personally have worked for that seems to both recognize this and build it into the compensation system.

This really is a great place to work. That alone attracts and retains an awful lot of people. You can also get to work on some very large problems and systems (another draw card). The fact that Google does (or can) pay you very well is just icing on the cake.

<comment><USER13> Do you or anyone else know how much/little Google outsources their development work? I was having a discussion with a fellow engineer about the outsourcing model and innovation.

<comment><USER4> Outsourcing? Not even a little bit. Not only that but AFAIK contract engineers are incredibly rare and nonexistent in many product areas.

This isn't to say that Google doesn't have partnerships with external vendors. We do. But engineering in general is a core competency, something far too valuable and of strategic importance to outsource.

<comment><USER14> Are we counting Google Account Managers hiring third-party contractors to do ad-hoc work for major clients?

[https://groups.google.com/d/topic/pylons- discuss/asqBrrEEhNo...](https://groups.google.com/d/topic/pylons- discuss/asqBrrEEhNo/discussion)

<comment><USER15> There are exceptions. But for software engineers who contribute to Google's (non-open source) code base, Google pretty much got out of using contractors around 2008 or so. Some contractors became employees.

<http://news.cnet.com/8301-1023_3-10107141-93.html>

</comment></comment></comment></comment></comment><comment><USER16> Speaking as a Google engineer: There are three components to compensation here. Base salary, annual cash bonus, and stock grants. When he says he "takes home" $250k, he probably means the sum of all three. When the author says he thought the average Google salary was $130k, he might be referring just to the base.

Most of the comments in this thread are similarly ambiguous. If you post a comment, please be clear about whether you're talking about base or total compensation!

<comment><USER17> Without wanting to sound stupid, when you talk about salaries do you always mention the amount before or after tax? Here in Europe it's almost always after tax.

<comment><USER18> I'm from Belgium, and I've never heard people talk about their salary after tax.

edit: to answer your question, the 250k is before tax.

<comment><USER17> I'm Belgian too. So if your Brut salary is 3k and your Net 1.5K you say during discussions that you make 3K? Everyone I know does the opposite.

EDIT: Actually I see what you mean. In the above scenario I would never tell a friend I make 3K but during salary discussions and in writing I guess you would quote the Brut.

</comment></comment></comment></comment><comment><USER19> This is very dubious - the Glassdoor stats at <http://www.glassdoor.com/Salary/Google-Salaries-E9079.htm> have 1,500 entries for Software Engineers that max out at $190k and average $100k.

The position above, Senior Engineer, averages $130k.

There doesn't seem to be an incentive for 1,500 people to understate their earnings by 50%+ on an anonymous poll, especially a poll of engineers at one of those most engineering-centric companies in the world, where corrupting a dataset would likely feel akin to high treason.

Not inclined to trust second-hand information from one individual - <USER2> like they're either working at a much higher level than regular programmer, inflating their salary by including perks/stock/etc to make it seem higher, an extreme outlier, or just lying (people who tell their friends how much they earn in casual conversations also sound like the kind of people who would inflate that number).

<comment><USER20> Why do you think perks and stock are not part of compensation?

<comment><USER21> They are, but consider that they are very volatile. When I worked at Yahoo, my stock added an equivalent of about $50k/year to my total compensation for the period I worked there. But I was lucky - I joined at a low and left and cashed out all my options with Yahoo trading at one of its highest amounts of the last 7-8 years.

At the same time I had people working for me who had 10 times as many options, but had been in the company for ages and received the vast majority of those options before the crash in 2000. As of this year, the couple of those people who are still at Yahoo will have options worth maybe $30k-50k total from 10+ years of employment that are over water, and their older options will start expiring soon.

Of course Google people receiving new Google options now are currently in a better position, but estimating the value of options grants over time is tricky.

<comment><USER22> I'm not sure Google gives out options...I think they generally give RSUs.

<comment><USER21> The issue is the same in principle - just less extreme in that barring a total meltdown you have an easier time assessing the lower end value of the package. But to take the Yahoo example: When I joined, a share was worth about 1/10th of the strike price of the bulk of the options of several people that worked for me. 1/10th would've been a lot better than getting nothing, but still.

</comment></comment></comment></comment></comment><comment><USER7> A few months ago I heard a first-hand account from within Google of a developer who was paid a $1M annual bonus, a team that divided a cash and stock bonus between them that was worth $1m+ to each team member, a PM who was paid $40M (and another who got ~$20M IIRC) not to go to Facebook and many other similar stories from Google that make $250k a year sound rather normal.

The theme is that Google has upped compensation in the past 12-18 months in order to retain top talent, with a lot of cash bonuses and base salary increases since competing against Facebook stock options with Google stock options isn't a fair fight any more.

Edit: apparently they also don't like developers talking to each other about this (although team bonuses are highlighted within the company), since they don't want developers interviewing with Facebook or another co. just for the purpose of getting some cash out of Google.

</comment><comment><USER5> I have no clue why people are obsessing over 250K. If you care about money as a programmer, you are better off working at a hedge fund.

My programmer friends at hedge funds (all between 22 and 26) are averaging 500K salary with 100K bonuses (note: as a programmer, base is much higher but bonus is lower). So if google isn't paying those types of numbers to people, then money cannot be the only factor at play.

<comment><USER11> What kind of backgrounds do they have? CS or STEM degrees at ivy league or similar schools? Does people with liberal arts degrees and a finance MBA get those kinds of jobs? (Assuming they can program.)

<comment><USER23> CS/STEM. Need not be Ivy League but it certainly doesn't hurt-- though I know a team or two in the top tier that almost have a preference for non-ivy league :-)

To be a quantdev or quant, an MFE is far more useful than an MBA.

</comment></comment></comment><comment><USER24> It seems like we're missing some important information. I'd be interested to know what he did before going to Google - i.e. he didn't go there straight from university. So he worked for Jacques, then left and some unspecified stuff happened in the middle, and now he's at Google. What did he do in that period that made him so valuable?

</comment><comment><USER25> Maybe I can shed light on why some of us are "shocked" about this number, while others seem to think it's no big deal.

I work for Cisco, which is certainly not considered a Google or Amazon, these days, but still a fairly respectable place. I'm a software engineering doing embedded work for the last three years out of my BS in CS. I got hired on at $73k with 300 options (now underwater).

I have had consistently good reviews, though only given one promotion and one raise - with a whopping $79.5k in salary afterwards. A bonus is typically 6%, though this year I've got the highest rating possible, so I had a 12% bonus. I've been given RSUs once, at a value of about $10k, though the stock price dropped and they are sitting at around $5000 now.

So, my yearly compensation is about $90k or so, though they've jacked up our medical costs, taken away free drinks, raise prices in our cafeteria, taken away the home broadband reimbursment, etc etc since I've been here.

So, Anyone need an embedded engineer with a network security focus?

<comment><USER26> Polish up that resume and start the search (the easiest way IMO is via contracting agencies, since they only make money when you do). Everyday you spend working below your market rate is a day you leave cash just laying on the table. You only have so many years you're going to be able to earn, I wouldn't waste them.

</comment></comment><comment><USER27> This smells funny to me. From everything I saw when I worked at Google, Glassdoor had the salary range right. For all the guy's self-deprecation, if he was really making $250k, even after bonus and stock, he must have been promoted multiple times, or hired at a fairly high level.

<comment><USER28> Haven't there been several stories in the last ~year about outrageous-sounding salary wars between the likes of Google and Facebook?

The average for "good" developers at Google might have shot up recently.

<comment><USER29> Exactly. I've talked to a couple of internal recruiters at Google, and they assured me that if interested, my demand for a $300K total salary package would be no problem for a senior engineer. They didn't even hesitate or ask to get back to me. They were clearly authorized to match that level on the spot.

</comment></comment></comment><comment><USER30> I too recently lost a co-founder to a Valley company of similar size. Considering that he is very green, not exactly the best in our startup and that we are based somewhere with rather low pay for engineers in general, the offer he received was very hard to believe for everyone. It's hard to convince people to stay when those work in Valley could be as interesting without the stress and come with a big fat cheque.

</comment><comment><USER31> I recently interviewed with several companies, and my experience shows that including bonuses, this isn't an unrealistic amount to expect. I had only one offer that ended up under $200K and that's only because the company didn't have a bonus program at the time. Many of the offers were much higher.

It was a really had choice to turn them down to start my own company, but I figure that being my own boss had some value, and being able to create something that was completely my own vision was more enticing. However, at the same time it gave me some confidence that if my startup didn't go according to plan, I did have a decent fallback.

</comment><comment><USER32> $ 250,000 a year must include stocks, bonus, 401k and healthcare. As is, it doesn't match the insider information I have about Google's salaries.

Let's be realistic a minute, $ 250k/year is a lot of money.

<comment><USER33> 250K is a lot of money depending on where you live.

You can't take simple things for granted in the Bay Area. Want to raise a family of four and actually have three or four bedrooms, you're looking at a million+ dollar house.

250K is what you should be shooting for if you have goals such as these.

</comment></comment><comment><USER34> Google's one of the few big companies that's smart enough to let engineers' careers progress without forcing them over to a management track.

</comment><comment><USER35> Economics!

During a boom time, wages rise. Wages are "sticky", meaning they lag behind the current state of the economy. Wages for programmers have really gone out the roof in the last few years due to lack of US computer science graduates, stingy visa provisions, etc.

In a few months, the funding wave will start to level off and dip, but wages will still be as high as ever. That's the crunch. Winter is coming.

EDIT: Think about it this way: in 2009, a 1M seed got you 10 engineers for a year. Now it gets you 6, maybe 7. Ouch.

<comment><USER36> Economics again though!

In 2009 servers were more expensive, and programmers handling your cloud were both less experienced AND had inferior tools. There is a small funding glut, but 7 vs 10 isn't a fair compensation. It's more like 7 people that work 20% more effectively, so 8.4 vs 10.

</comment></comment><comment><USER37> I'm not sure why people find this so unbelievable.

The revenue per employee at GOOG is $1.2M in a very high margin business. That means some of their best developers, the guys whose products generate all the revenue, take home only 20% of the pie. In finance, this would be laughable.

Corporate America baffles me sometimes.

<comment><USER38> Which areas of finance? From what I understand from some finance people is that they don't take away as much either.

There's also an oversupply of labour in the city though.

</comment></comment><comment><USER39> I've been meaning to ask some of my founder friends about this.

I've casually heard that Google and Facebook have driven the starting salary for Bay Area developers up above $150k/yr for college kids with no experience.

I'm a talented 25 year-old web developer who jumped from contracting to full time a year ago. I received a $110k/yr (not eligible for bonus) offer. The people I asked at the time said it was a competitive salary and not worth negotiating.

Now I'm wondering if it's time to move on. I see boxes in on job applications for "expected annual salary" and I don't know what to put. I know the money you save when you're young is what allows you to retire/start a company/etc., and want to make sure I'm being paid competitively. At the same time, I don't want to misread the market and come across as out-of-touch on one of these apps.

Guys, what's the going rate for a talented front-end web developer in the Bay Area about 4 years out of school?

<comment><USER3> _I see boxes in on job applications for "expected annual salary" and I don't know what to put._

"Negotiable", "Market rate", etc. That box is asking you to compromise your negotiating position. There is no legal or moral stricture that says you have to oblige them.

 _The people I asked at the time said it was a competitive salary and not worth negotiating._

This makes me angry. Of course it is worth negotiating. What would have happened if you had said "That is an interesting number. How would you feel about $115k?" Answer: in all probability, you'd be a couple thousand dollars richer now for _three minutes of work_ , the worst possible outcome would have been accepting the offer at $110k, and nobody at your company would care either way because the difference is bat guano to them.

<comment><USER40> > _the worst possible outcome would have been accepting the offer at $110k, > and nobody at your company would care either way because the difference is > bat guano to them._

That's a pretty unimaginative worst possible offer. The company could pay you 115k, resent it, and use it as justification to give you various shit-work. I've seen that happen to a friend and it actually hurt his mid term learning and career growth.

It's also fairly common for a company to simply choose to fill the position with someone who's less troublesome.

If you have an exceptional value to offer a company then, you have significant room for negotiation. If your skill is a common commodity, you likely won't.

<comment><USER8> Any company that treats you like shit because you negotiated a 5k bump over their first comp offer is a company you are better off not working for. And, please, read that sentence again.

The worst case scenario is that you accept their first offer and don't find out until you've spent a year and a half of your life working there that the company isn't worth working for. _That_ is the worst case.

<comment><USER40> There's a difference between giving someone extra work, likely "shit work" and treating someone like shit. More than one employee at excellent companies has been assigned more work due to having a higher salary than colleagues at the same grade. This is an easy, even somewhat logical rationalization for a manager to make.

The "worst case" you put forward is still far from convincing. In work, black swans are generally positive. If a typical job has a value of x, most will be between .8x and 1.2x, but a few will be 10x or even 100x. Outside the military, where death is on the line, -100x jobs are very, very rare compared to +100x jobs.

Wasting a year and a half in a ho-hum environment is not as big a price as missing a once in a lifetime opportunity due to over negotiation. In the opposite vein, the amazing opportunities often come at a reduced salary. How much less would Warren Buffet be worth today if he'd tried to negotiate a higher salary with Benjamin Graham instead of doing the exact opposite?

<comment><USER8> I don't know how much more simply I could have said it, but I'll take a shot:

If your employer treats you more poorly because you negotiate a better comp package, you shouldn't be working for them; they are a bad employer.

If negotiation costs you a "once in a lifetime" opportunity, the opportunity is "once in a lifetime" in the "boiler room pump and dump" sense, or the "late night infomercial" sense. A year of your life, however, is priceless.

<comment><USER40> > _I don't know how much more simply I could have said it, but I'll take a > shot:_

Your previous comment was only four sentences, one of which was an exhortation to read the previous sentence twice! I'm sure your implication wasn't intentional, but I find the suggestion that you aren't speaking simply enough for me to understand your reasoning offensive.

It's not that your explanation was too complex. I just don't agree with it.

It's _rational_ to demand more from someone who you pay more. If one employee of a certain job-title asks more money than his/her colleagues who have equivalent skills, then expecting that person to handle more work or less desirable work that comes to the team is rational. It may not be optimal in every case, but it certainly doesn't make the manager's entire company "a bad employer".

There are many good opportunities in life that can come from not being maximally greedy. Some are once in a life time, some are more commonplace. One need only read biographies to find examples.

<comment><USER8> No, it's not rational to demand more from someone who you pay more. Negotiations are two-sided.

If, for your $5,000 pay bump†, the company decides they'd like you to be closing 35% more bugs than every other employer in your pay band, they can demand that in the negotiation. You can then make a decision about whether or not the bump is worth the concession. If it isn't, you can decline the job, or you can negotiate the concession, or you can decide to accept the previous offer.

It is (word chosen carefully:) _alarming_ how bad engineers are at negotiation. Beliefs like yours (aggressive negotiation entitles an employer to maltreat employees later on down the line) are _alarmingly_ common. They're simply not true.

The detail-shackled brains of nerds†† seem unable to get past something here: no matter what employers say the feel about negotiations, surely they can register the tenor of the negotiation in the back of their heads, and then ratchet their expectations appropriately. Surely, nerd engineers think, that must occasionally happen. Answer: yes, it does happen. _AT BAD EMPLOYERS_. Good employers understand how salary negotiations work and allow for it. The best employers even account for how bad engineers are at negotiations and go out of their way to help educate candidates (Fog Creek, for instance, once said they often "top up" the best offers some candidates receive --- that should function as a big red flashing light to those people that they didn't negotiate well enough).

I am not telling you that employers won't do irrational things if you negotiate hard with them. I'm telling you that if they do, you should run run run away fast, because that's the canary in the coalmine. Those employers are also going to dilute the shit out of you, call you in to work on weekdays, swap your tolerable manager out with some douchebag they hire from a BigCo to increase productivity, lock you into a regimented COLA-based incentive comp plan, slash your health care benefits 8 months down the road, and never _ever_ improve the hardware you're issued.

Don't believe me? Think of it this way: the best engineers are disproportionately _likely_ to negotiate aggressively. Employers that get vindictive about negotiation don't get to hire those people. Why are you interested in working at an employer that shuns the best talent?

(Hiring manager, one of many at my company, speaking here.)

There. You got a prolix response from me. Happy? :)

† (about which Patrick is right: its a rounding error, and it's the kind of rounding error that --- unlike, say, a better- but- out- of- spec laptop, which might incur a huge companywide "new laptops for everyone" shitstorm --- is particularly easy to concede to a new hire.)

†† (see my about:)

<comment><USER41> I'm more familiar with how BigCorp engineering works than startups, but I haven't heard of a place that _doesn't_ use pay in performance reviews in some way or another, maybe unofficially, the idea being that what constitutes "good performance" for someone making $200k has to be a higher bar than for someone making $100k, or else why would you not just hire more of the $100k people? They have to be doing more or better work to justify their higher cost, which should then get factored into the review. Not necessarily closing 30% more bugs or whatever; it could just be that they're the go-to person for the hardest problems, or a repository of institutional knowledge (for long-term employees), but it has to be _something_. I would guess $5k doesn't register on that scale to get you kicked into a higher bar for reviews, though; $115k and $120k look like roughly the same kind of compensation tier.

<comment><USER8> Current pay is used in salary reviews everywhere. But that's obviously a terrible, _terrible_ reason not to negotiate today. How can you possibly be worse off in a salary raise negotiation than by having the money you deserved _at entry_ held by the employer as a concession _at your employment review_?

The go-to person for the hardest problems (who you generally want to be) is usually not chosen by the person who controls you comp, but in either case it's reflective of your title, not your salary, right?

<comment><USER42> Thank you for your comments in this whole thread, tptacek.

<comment><USER8> Um go me!

Some errors in my previous comments:

I meant "call you in on weekends", not "weekdays", and I meant "at your performance review", not "at your employment review".

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER43> A lot of people seem to find this incredible (from my twitter feed), but I don't, really.

I know a couple of people running brick-and-mortar shops (think: selling furniture etc), or lawyers, or other professions that earn just as much too.

<comment><USER44> _Someone_ \-- and indeed, looking at the real estate ads -- a lot of someones -- have to be running up the demand for $1M++ houses throughout Silicon Valley.

</comment></comment><comment><USER45> At Google, Sr. SWE makes about $155K if female, about $180K if male. Base salary. Bonuses and refresher grants are also skewed accordingly.

These are 2011 numbers, personally researched.

<comment><USER46> From what I've seen, as an outsider with a lot of friends that work at and/or have interviewed at Google, they seem to have some serious issues with sexisim, issues that go beyond a pay gap. They are trying, but man, they are not doing so well, and they are losing out on talent because of it.

<comment><USER45> So check this out. I finally have a data point to use to prove this. I've been out of there about six months. One of my friends recently transitioned male- to-female. This is a unique opportunity to find out, right?

She is now being passed up by people visiting her team's cube to ask about things regarding the service. Their default response is to go ask the guys in the cube instead.

"Welcome to my world", I said.

<comment><USER46> I'd expect discrimination against transexuals to be much stronger than anything else, so I'm not sure that proves anything about how women in general are treated.

One of the things I notice is that the satisfaction levels of men and women I know working at google, even normalizing for skill level, is vastly different.

You don't sound particularly happy; why are you still there? my impression is that there are other places with cultures that are better at least in that regard.

<comment><USER47> My experience at work but not at Google, has been your standard sexism really accounts for most of discrimination, which I've put down to being seem as not a man. Yes you get get some extra problems being trans but way less than I expected pre transition

</comment></comment></comment></comment></comment><comment><USER48> _Another effect this will have on the start-up scene is that if you build your company in 'The Valley' that companies like Google will be competing with you for talent. You may have an upside from being in the SV eco-system in the first place, however you may find yourself paying a lot more for developers than if you were in a place where parties with pockets as deep as Google are rare.

Headquarters in Silicon Valley, development somewhere else might be a good strategy if you want to keep the burn rate under control._

Any thoughts on this? Can a small startup compete with the Googles and Apples in the Valley?

<comment><USER49> While it might be harder to get good employees cheaply, you would expect that finding financially independent co-founders would be easier.

If you have reasonable financial discipline, 5 years of $250,000 can easily build yourself a war chest of a few years living expenses: the perfect co- founder.

</comment></comment><comment><USER50> Does anyone know if they have an active program to cut the bottom performers? If not, I suspect they have quite a collection of overpaid mediocre programmers.

I worked for many years at a company that paid significantly higher than average salaries. Even with a program to cut the bottom 10% per year, we had quite a few people who were mediocre at best.

It's easier for a busy manager to hold onto the people they have than to hire and train new ones. Paying high salaries is an easy way to do that if you have the cash.

<comment><USER20> A company so toxic as to have a 10% attrition commitment is going to be filled with employees trying to abuse the company as much as the company abuses them.

<comment><USER41> I remember (but can't seem to dig up) some research that those programs harm the productivity/morale of the _top_ performers as well, who end up being unreasonably worried that they might end up in the bottom 10% somehow. Either they underestimate their own skills, or worry that a bad review process will undervalue them, so they end up spending a lot of time/stress worrying about reverse-engineering how the review works and optimizing for its metrics, rather than focusing on their real job.

</comment></comment></comment><comment><USER51> Tl;dr: someone's ex-employee is now working at Google, says he gets $250k salary and he's under 30.

Why is this even on HN, let alone #1?

<comment><USER52> I think it's on HN because such salaries will hunt talented or not even good engineers down and if this happens it could be a really hard time for startups. Let's be real for a second without engineers ideas are worthless and if all of those good ones are at big companies which gives a out a lot of cash what can you do as a startup? I don't it is bad as it sounds but it could be tough and it could kill a lot of startups in future if this attitude by big companies grows.

In the contrast: you don't have to start your company in the Valley to be good and maybe it can save you a lot of headaches and money to not do so.

But at the end the source of this problem is different: the Valley just needs more engineers to get things rolling.

<comment><USER53> It's absolutely correct that technical ideas are worthless without effective implementation. That said, I strongly suspect that the current crop of startups, as a consequence of being overcapitalized by the current bubble, are also over-staffing their engineering teams. You don't need a dozen developers to write a me-too photo sharing app.

<comment><USER52> I would go a little deeper and so that you just need those who are really thrilled about what they are going to create. They need to believe into what they doing. Those are the ones who make the difference.

I'm really curious about how far this game will go.

</comment></comment></comment></comment><comment> brown9-2 It's really dangerous to take one anecdote as data.

</comment><comment><USER54> This is a good sign. Market salary for a 30 y/o corporate lawyer in NYC was north of $250k this year, and for a 30 y/o banker it was probably 1.5x-2x that. Yet Google makes more revenue per employee than any law firm or investment bank.

Professional salaries are a function of both objective factors (supply and demand), and subjective factors. Engineers have long had a disadvantage on the subjective side because it is difficult to quantize their contribution to the revenue of the company. Hopefully signs like this mean the perceptions are changing.

Like it or not, the Valley needs to pay more to attract top people. If you're a science/engineering major at a top school at the top of your class, how much would you be willing to give up to go into engineering? Prior to these recent salary spikes, you were looking at making $30k less to start versus finance, growing to $300k-$400k less by 30. It takes a lot of love and dedication to turn that down for what is at the end of the day just a another job.

</comment><comment><USER55> This article does not give a good feel of how smart this engineer really is. The programmer says he feels stupid at google. Well, truth is often the smartest people are often more humble!

Being the stupidest person among your peers is probably the best things you can do for yourself if you want to learn. Who better to learn from than a bunch of brilliant people!

</comment><comment><USER56> I do not compete with Google for talent. Well, certainly not talent that I want anyway. Don't get me wrong, there are a lot of fine engineers at Google, but they aren't startup engineers.

Because I don't compete with Google for talent, I, nor anyone I know, pays engineers anywhere near $250k/year. Personally, I believe Google pays that much because they have to just to keep people from jumping ship.

If you're an academic, I believe Google may be the perfect place. Your meals are provided, there is always something intellectually interesting to research and the stress level is quite low. The fact is, nothing you do as an individual is going to make or break a $30B/year company and that has its pluses and minuses.

Luckily for me and other startup founders, there are a whole lot of talented engineers out there that don't find the slow, calm, quiet life particularly appealing.

</comment><comment><USER57> This is a nice data point. But if you want to know the real deal, don't talk to fellow programmers. Talk to guys in finance who support the R&D function at tech firms. We know all and see all, everybody else except HR only sees data points. And are you seriously going to trust anybody from HR to interpret numbers?

My advice: Do this work because you love it. But negotiate aggressively. Programmers don't push as hard as other types of employees, there's no real cost to pushing on compensation, just don't be a jerk about it. Read books, blogs, etc on compensation negotiating tactics.

Bottom line: This compensation will not last and plans are already in the works to put an end to it. I will bet money that 2-3 years from now people will be wailing about the drop in programmer comp.

<comment><USER26> >This compensation will not last and plans are already in the works to put an end to it.

Like the collusion big companies were already doing and got busted for? It's going to get harder and harder to distort the markets with instant communication. If anything is going to come to an end it's probably going to be the absolutely ridiculous overpay that executives have been enjoying for the last 20 years+.

</comment></comment><comment><USER58> Ignoring passion, does it make sense economically to join a startup in the Bay Area?

It doesn't seem uncommon for very young (25+) top engineers in the Bay Area to be making anywhere from $175k/year -- 250k/year in base salary + bonus + equity. Over 30 years, that's a more or less guaranteed $5m -- 7.5m before taxes from a single income. (Ignoring things like promotions and older engineers possibly needing to retrain.)

If you're not an early employee at the next Google, or a co-founder of a to- be-talent-acquired company, is it likely at all that you will beat those numbers at a string of startups? And if you do beat those numbers at a startup, is it because you're basically doing the same work you would be doing at Google anyway, likely ads or infrastructure?

<comment><USER59> _"It doesn't seem uncommon for very young (25+) top engineers in the Bay Area to be making anywhere from $175k/year -- 250k/year in base salary + bonus + equity."_

It's very uncommon. Less than 1%, for sure. The other 99% don't make headlines on HN.

<comment><USER58> I may have a biased sample, but six out of my seven engineer friends 25--35 have salary + bonus + equity in that range or higher. The only one not making that is at a very early stage startup. Even my friends making iPhone apps independently are in that range.

</comment></comment></comment><comment><USER60> I've heard this is part of the reason Google is expanding in non-SV offices. They can recruit someone right out of school, move him/her to Boulder or Portland or Austin, pay them less and not worry so much about Facebook stealing them.

</comment><comment><USER61> _takes home one quarter of a million dollars annually._

did you really mean "takes home" as in, $250k after taxes and social security?

</comment><comment><USER62> This is completely believable, if you take into account the bonus and the RSUS.

Suppose the actual salary is $130k and 30% (at least that's what I heard bonus): that already brings his salary up to $169k.

Now add RSUs: over the last five years, the average price had been ~$500/share. He will only need an RSU grant of ~650 RSUs (which sounds reasonable, especially if it was granted in 2008/2009 when the stock price was lower) to be at $250k total compensation. It could also be the case that his base is higher, but he is only getting 15%-20% bonus, or didn't get as many RSUs: there are many ways in which $250k is a believable figure.

Given the near certainty of Facebook's IPOs, what other private companies are trading at on Sharespost and SecondMarket, as well as valuations/prices of recently/upcoming technology IPOs, his total compensation is actually somewhat _below_ what he could earn elsewhere.

Of course nobody working at Google (or Facebook, or any other serious technology company for that matter) is it in purely for the money: otherwise they simply wouldn't have be at the level of proficiency needed to be hired at such companies. Taking a route optimized for maximizing _current_ income is not the same as taking a route optimized for learning. _That_ is the reason engineers will always leave Google and join startups (much like Engineers left DEC/Sun/Yahoo/etc... to join Google), provided the startups are solving interesting technical problems. Unfortunately, right now there's a dearth of that.

Corollary: you'll never lure a Google-caliber engineer into an actual startup (as opposed to a "certain pay off" pre-IPO company) with talk of compensation. When I hear companies complaining about how difficult is it to hire "because" of Google/Facebook/Twitter/LinkedIn hiring all the engineers, they're almost always startups that are _not_ building interesting technology.

Another relevant point: there is no pressure for a software engineer to live a $250,000 lifestyle. An enterprise sales engineer I know once purchased a used BMW 540i. That seemed pointless to me: you can get better acceleration and handling in in a Japanese car, if really want a BMW you could get a new 3-series (getting better handling and acceleration than a 5-series, along with free maintenance for 50,000 miles). If you don't care for performance, you easily spend 1/3 as much money on a Honda Civic or Accord. However, his explanation made a lot of sense: he frequently needs to take clients out and an executive class car certainly makes an impression that can close a sale. I'd imagine the same goes for lawyers, management consultants and the like. A software engineer can easily live on $40,000 a year and save/invest the rest (for either a startup, early retirement or purchasing what he/she truly dreams of e.g., a Porsche 911 Turbo if they're really into performance cars).

<comment><USER63> The car thing is funny. In germany if you turn up in an expensive car at your client, they think you already make enough money and want to get the price down while in the US people think you are successfull and close a deal. Different cultures i guess :)

</comment></comment><comment><USER64> The numbers in this comments thread are staggering.

</comment><comment><USER65> I know profitable companies like Google, Microsoft, and Amazon typically offer you more options and stock grants (in addition to cash bonuses) at annual reviews or whatever.

Do (not yet profitable) startups do the same? From what I've heard, most don't offer bonuses in the form of options and stock grants, but this seems kind of weird to me. I can understand not offering cash bonuses if they're not yet profitable, but it seems like if I do a great job, I should get extra stock (since otherwise, basically the amount of stock I ever get is purely determined from my status when I joined, which could be much different from my status four years later).

</comment><comment><USER66> They have to. Some really talented engineers could re-imagine google search fairly easily. At this point, they have to pay them not to jump ship and become competitors. Google was both "the search engine" and "the best search engine". They are rapidly becoming a shopping site and "karma whores" have gamed their ranking algorithms. What you are looking for is no longer in the top 3 google results. I wouldn't be surprised if facebook or Apple took a run an their core business.

</comment><comment><USER67> 'at Google I feel like I'm stupid most of the time'

Is that let's-pay-them-enough-not-to-leave-for-Facebook-even-if-they-don't-do- much strategy still on?

<comment><USER68> I think it's likely an application of Dunning-Kruger.

"The Dunning–Kruger effect is a cognitive bias in which ... the highly skilled underrate their own abilities, suffering from illusory inferiority."

<http://en.wikipedia.org/wiki/Dunning%E2%80%93Kruger_effect>

</comment></comment><comment><USER69> For someone with ~ 10 years of experience who has a very good track record, I could see a total compensation package of that order.

Joe Shlub is not going to get this. But I've worked with very good developers (e.g., guys at Apple who were instrumental in making whizzy stuff happen in the Mac's graphics stack) who are worth this, and more.

</comment><comment><USER70> I wonder how many of these non-Google $200K+ salaries are for developing in non-Java languages/frameworks

</comment><comment><USER71> nothing is stopping these guys from coding something up after work/on the weekend. Sure it'll take twice as long to release a project, but it's a small price to keep getting $20K a month salary

<comment><USER72> Quite the contrary, you don't know Google's non-compete work-contract provisions and, if any, how would they held up in court, so your statement is quite speculative.

Besides, the last thing you'd want to do is to work after-hours and find out your employer is owning the IP of your project (that's besides pager-duty and other after-hour things your employer might make mandatory anyway).

Regarding taking twice as long, just imagine projects like Dropbox or Twitter taking twice as long to get to the market - I doubt they would be competitive in the same manner.

<comment><USER73> I will preface this by saying I have never worked at google and have not seen their employment contract so perhaps they've found a way around it but from what I understand, California has well established laws in place protecting moonlighting. As long as you aren't coding up a search engine or something that directly competes with the company, you should be ok.

<comment><USER41> _a search engine or something that directly competes with the company_

That's a _lot_ of things for Google these days, though. Not just search engines, but also: local search, video streaming, webmail, contextual advertising, maps, route planning, social networking, flight search, RSS aggregation, collaborative document editing, machine translation, VOIP, web browsers, mobile operating systems, app stores, programming languages/compilers/VMs, web frameworks, cloud-computing services, etc., etc.

<comment><USER74> Newspapers did a lot of things too. But it was Classified Ads that let them do it. Once they lost that revenue stream -- every other part of the business suffers.

</comment></comment></comment></comment></comment><comment><USER75> I don't know if one can easily find a similar compensation given from an European company... So, distinguished persons like Brian Kernighan or Rob Pike should earn at least 1M$ ?

</comment><comment><USER76> Beginner level engineer - barely pushing 80k.

I'm working at the wrong place =(

</comment><comment><USER77> tl;dr There was a hasty generalization based on one dibious number made about Google salaries being higher than Glassdoor's poll-based estimate.

<comment><USER78> well based on several people on this thread revealing their total compensation packages, the 250k number does not seem false.

..And I am incredibly jealous...why I am remotely working on a Sunday for a fraction of that? Even though my cost of living is less...I live in a major metropolitain canadian city, I know of several people from Uni who moved to the states in jobs like that.

<comment><USER79> >> ...why I am remotely working on a Sunday for a fraction of that?

Asking myself the same question today..

</comment></comment></comment><comment><USER80> Hard to believe.

</comment><comment><USER81> The 250k/year is to keep these best of breed programmers from leaving. No doubt their email inboxes are completely spammed with job offers. It's capitalism, supply and demand. If Google could get away with paying them minimum wage, they would. What prevents them from doing that is that their company will crash and burn in 6 months if they did.

</comment><comment><USER82> Could any engineer(with 1~3 years of experience) at Google NYC office share some income information? How's the pay at NYC Google generally compared with Mountain View?

<comment><USER83> I was a Software Engineer 2 at Google NYC, which is the level most new grads and people up to 3 years or so of experience start with, and my base was 106K, with the usual 15% expected bonus plus stock and options (though it seems like they've moved to giving out more stock rather than options). Can't say how that is compared to other offices, but I have reason to believe that I was very close to the mean salary for my level.

</comment></comment><comment><USER55> I don't understand the article, the author says the current googler was one of his "ex-employees" but he is "the guy he just met". Am I missing something here?

<comment><USER84> "the guy I just met" can be someone you never knew before or someone that you've just had a meeting with.

I thought from the context that it was clear I meant the second version.

<comment><USER55> This is just my opinion/rant.

I just met this guy. Idk just doesn't conjure up the idea of someone you once knew. It's just loose language, that's why I was confused.

Also you said you recently met him, then you say you just met him. Which is it?

"The guy I just met who was once my ex-employee." This sentence just feels confusing. I can't tell you why but it does.

A simple "He" would be much clearer.

<comment><USER84> The verb conjugation is 'meet, met, met'. I can't help it, that's just the way it is.

<http://www.verb2verbe.com/conjugation/english-verb/meet.aspx></comment></comment></comment></comment>


You'll Never Be As Successful As You Want To Be - <AUTHOR> http://bennesvig.com/2012/02/03/youll-never-be-as-successful-as-you-want-to-be/

<comment><USER3> _> >No one really wants to help you unless there is something in it for them or it fits into their larger plan.<<_

Some good points, but I've found this one to be wildly untrue. Almost universally, I've found really successful people want to help other people become really successful. Like his other points, you'll have to initiate and ask for their help, but I've never met anyone successful who isn't willing to give to just about anyone.

<comment><USER4> Whats in it for them? Largely based on experiences, one way to get successful people on your side and helping you - ask them for advice. But more importantly, follow through and actually do something with it. And then keep them updated.

Most people won't take action, and doing something is a very easy way to separate yourself from everyone else.

<comment><USER5> Exactly. But those people don't want to help you until you start asking them for something and _do something_ to separate yourself from the crowd.

</comment></comment></comment><comment><USER6> ... unless you start making demands?

while I agree with the article. title of this submission is very misleading!

</comment><comment><USER7> Sure, you'll never be successful - whatever your definition of success - <USER2> you don't _do_ anything about it.

But I think there's an even more important point about never being as successful as one wants. When you set up a finish line, eventually you will start approaching it, as soon as you are near it that finish line doesn't seem so enticing anymore.

In fact what you thought of as "successful" a while ago will seem rather mundane and boring once you get near enough to actually reach it. So you move the finish line forward - to what you _now_ consider to be successful.

Many of us probably do this, at least most of us here on HN, because we like to push ourselves. We like to edge on and on and figure out where the actual limits are, not where our self-set limits are.

Which is great, it makes you awesome in the eyes of many, problem is, you can't ever be happy this way. There's always _more_ that you want.

So how do you solve _that_ problem?

<comment><USER8> The usual boring response on that, but which I found always more true every day, is that you've got to enjoy the path forward to actually be happy. When looking back to my life, I think the moments I were going forward were the happy times - the ones backward were a bit harder.

You've got to decouple your happiness sentiment from your overall self-worth. People's happiness doesn't grow much once they've got 50000$ a year a famous study said. But one's self-worth still grows when millions of $ are adding. Once you've conscious of the difference between the two, you start decoupling a bit your happiness from your success. Of course, you can't totally, but letting things a bit loose helps your health, stress, and life quality. Trying too much is dangerous.

Last, don't forget life isn't undimensional (god would that be boring if so). Beside the success you define, there are friends, love, entertainment elsewhere. It's not a path, rather a space where you can go to many many directions _additionally_ to the success strategy you define for yourself.

<comment><USER7> Oh I'm not talking about money at all. I find money to be simply a side- product of things I want to do that I consider successful.

But, for example, I want to publish a book. I know for a fact as soon as I publish it, I will be all mad at myself because it isn't a bestseller. Once a book becomes a bestseller, I'll be mad at myself that why haven't I written two bestsellers yet?

When I have two bestsellers I'll be upset that why didn't I put more deep meaning in them and wrote trash.

Or to take an example I've already got the "achievement unlocked" on. My blog gets ten times more monthly traffic than it did a few months ago, but I get really upset with myself why I no longer seem to be able to produce regular- ish spikes like I used to? Or that one post that got insane traffic, why can't I write something as good/popular anymore?

Things like that. I'm the kind of person that honestly enjoys the journey, but I just always want more more more.

As for money, eh, I'll be happy when I can simply not worry about that. Money isn't something to be happy about, money is a tool to do cool things with.

<comment><USER9> You ask the question as if you don't know the answer, even tho you have stated it quite clearly (and it's common adage):

        Happy is he who is content with his lot.

<comment><USER7> Easy to say, much harder to do. The question isn't so much _what_ but more along the lines of _how_ ;)</comment></comment></comment></comment></comment>


Evolution of economics - <AUTHOR> http://www.sciam.com/article.cfm?id=evonomics-skeptic-january-2008

<comment><USER2> Nice article, but it's not exactly news. Adam Smith discovered spontaneous order. He recognised that it was a counter-intuitive idea - we expect that any order we find has been brought about through 'intelligent design' or in Smith's own words the 'invisible hand' Charles Darwin openly acknowledged his debt to Adam Smith.

</comment><comment><USER3> Another parallel: Willful ignorance of evolutionary theory is to conservatives as willful ignorance of economics is to liberals. (Liberals in the American sense.)

Pushing it a bit further, Keynesian economics corresponds to Intelligent Design in the above parallel.

</comment><comment><USER4> This is a great analogy, one which I've been making for a while.

18 months ago, I wrote a blog article about how the war on terror can be thought of as an economic war, where economic transactions either encourage or discourage the individual from using violence.

[http://www.whattofix.com/blog/archives/2006/08/goodbye_4gw_h...](http://www.whattofix.com/blog/archives/2006/08/goodbye_4gw_hel.php)

This also plays into some of the concepts that Wolfram has been going on about. What is the smallest set of rules that create all of those SKUs and prosperity? Is there a similar set of rules running the universe? (Assuming the Computational Universe theory is correct) Good stuff.</comment>


Metaphors We Believe By - <AUTHOR> https://aaronzlewis.com/blog/2019/07/25/metaphors-we-believe-by/ <comment><USER2> As the author mentions at the bottom of the article, the title is a reference to the book "Metaphors We Live By" [0], which essentially lays out the idea that a very significant portion of modern language is really just metaphors, even when we don't realize it. Super interesting book, for anybody interested in those kinds of things!

[0] [https://www.amazon.com/Metaphors-We-Live-George- Lakoff/dp/02...](https://www.amazon.com/Metaphors-We-Live-George- Lakoff/dp/0226468011/)

<comment><USER3> Douglas Hofstader's work in cognitive science is based on the same premise. Humans high level thinking fundamentally base on analogies.

His book "Fluid Concepts & Creative Analogies: Computer Models of the Fundamental Mechanisms of Thought" (1995) is the culmination of his thinking.

</comment></comment><comment><USER4> Regarding the fish comic in the article: it's how David Foster Wallace starts a 2005 college commencement speech: [https://www.youtube.com/watch?v=8CrOL- ydFMI](https://www.youtube.com/watch?v=8CrOL-ydFMI)

<comment><USER5> That was an amazing listen. Most people have so many beliefs they don't question at all - me included (and I add this not just to seem like I haven't missed the point of what Wallace was saying), and the metaphor of the atheist and the religious guy arguing exemplifies that very well, specifically in these beliefs we deem non-religious, from our political ideologies (even centrists have very strong, usually classically liberal ideology - when was the last time you heard someone discuss not merely certain rights but the whole idea of rights, not just a political candidate but the whole idea of the democratic establishment, not just rich and poor but the nature of capital and value itself etc.?) to our metaphysical assumptions that ground popular (and expert) conceptions of science.

Most people simply have no idea that there are alternatives (ask a random person if they're a materialist in the metaphysical sense, which they likely are, and you'll either get a confused look or a "yes" once you explain it; you won't here a critique of idealism; similarly, ask if they support representative democracy and a "healthy economy" and you won't be met with a critique of capital or the illusion of the economic[0]; ask if they are a moral realist or anti-realist and they probably wouldn't be able back up either opinion, if I had a penny for the number of times someone threw out a "morality is relative" as if a settled fact in philosophy when discussing an issue I'd be rich) and as Wallace mentioned, we build prisons so strong we don't even realize they are prisons.

[0] I've borrowed this term from Patrick Murray's essays on the value-form in his contribution to critiques of marginalist economics.

</comment></comment><comment><USER6> Absolutely captivating read. Great big-picture thinking (the biggest).</comment>