hacker news with inline top comments    .. more ..    21 Jan 2015 Ask
home   ask   best   3 years ago   
Startup jobs with low salary and negligible equity, what gives?
points by 4k  5 hours ago   87 comments top 28
1
patio11 3 hours ago 3 replies      
Joel Spolsky had a really interesting insight [+] once about hiring pools: they're disproportionately filled with people who you don't want working for you, because if you're hireable, you exit the hiring pool fairly quickly, and the dynamics of this system quickly mean that the pool is filled full of people who aren't even FizzBuzz qualified.

I think the other side of the market is isomorphic to this: any publicly available list of jobs is disproportionately filled with positions which qualified talent has seen, evaluated, and rejected as unsuitable.

[+] Citation: http://www.joelonsoftware.com/articles/FindingGreatDeveloper...

2
Dalkanon 4 hours ago 1 reply      
Most pre-Series A start-ups will offer (far) below market salary; they have to, since, generally (and as another poster said), they have only $X00,000 in the bank and no revenue. This is pretty typical.

What the 0.05% equity package indicates is that the founders probably have an unrealistic expectation about how much their venture is worth at this stage. I've seen this a few times in nave, young (23-25 years old) first-time founders that don't have significant amounts of experience working in start-ups and/or technology in general. This trivial amount of equity is a huge red flag, not only because its present value is negligible (guess what the risk-adjusted rate of return is on a start-up run by first-time founders?), but because it indicates that the work environment will likely be unpleasant (hellish hours, frequently changing requirements, no clear vision -- common in companies run by first-time founders).

Also, keep in mind: if these founders are foolish / nave enough to think they'll be able to hire a credible, valuable engineer with this package (they won't), they're also likely foolish / nave to get screwed by their investors. Founders are only at the bottom-middle of the start-up hierarchy: VCs are above them and LPs are above them.

3
jacquesm 4 hours ago 3 replies      
> Who would take these deals?

People that are insecure about what they bring to the table.

Pre series-A the risks are still huge and the stock should be priced accordingly. Say the founders think a pre series-A company is worth $2M and they offer 0.05% equity you could enter negotiations asking for 1% more if you feel like it (and walk away if it goes below 75% of your counter opening bid) if you can defend the position that there is still a 95% chance that the company won't make it unless they have you on board.

Otherwise price the stock at 0 and ask for a market conform salary.

They'll move. An offer is just an opening move, nothing more.

4
hkarthik 4 hours ago 2 replies      
The target candidate for these startups largely doesn't exist. Most folks accepting such a salary in the Bay Area are recently out of college and living in small apartments with roommates.

When it's all said and done, most of these startups will settle for a few offshore contractors or hire remote people who live in cheaper parts of the country where $90K goes a lot further.

The tried and true "solution" to this problem is to import a number of H1b visa holders from other countries who are willing to work for the lower salaries and accept the lifestyle choices that it imposes in the Bay Area. For many of them, $90K in the Valley is still an upgrade from where they are coming from.

For those of us with a decade or more of experience, it's best to focus on the post Series A startups that have the money to pay. However, many of these jobs involve cleaning up code written by those inexperienced folks who accepted less pay in the early days.

5
lsc 3 hours ago 0 replies      
>I noticed some rather unsettling job adverts in the past while. Some pre series-A startups in the valley offering like $90k in salary for an experienced developer and 0.05% equity. I am just trying to understand who are their target candidates that they expect to join for such an offer (not to mention crazy working hours)?

I had a similar experience recently. all the "startups" expected me to take a 30-40% paycut vs. the larger places, essentially because they expected me to be excited about their company.

Which is weird, because if the startup doesn't get really big, even if it does okay, nobody is going to care it's on my resume. But the large companies? especially the large companies with a reputation for high standards? they look good on the resume.

Another funny bit is that the same thing, as far as I can tell, is true of contract positions.

What irritated me is that I was going through headhunters... e.g. they were already paying 30% extra for the headhunter - if they just gave me that, I'd have been happy, at least for the first year.

The other thing was that they were weird about money. I talked to one startup and (after an 8 hour interview) they seemed super excited. the person who would be my supervisor gave me his email, and man, I thought I was in. "how much are you looking for?" I named a high number, about 10% higher than I expect to actually get, because that's what I always do. Let them talk me down. I even mentioned my bottom number "a guy who has been working for me for most of his career just landed a job at $x" - but nope, the mood immediately changed; I was hustled out the door and the company went completely dark. no response to the official or the personal emails. I finally got some bullshit answer from the recruiter, where he read back the "why you shouldn't hire me" things I give companies before any interview.

The solution? I ended up getting a contract gig at the large advertising company in mountain view. I'm pretty happy with how things worked out; It's closer to where I live in the south bay, it looks way more impressive on the resume, and I need three people to sign paper before I do overtime.

6
eddievb 4 hours ago 0 replies      
A few thoughts:

1. The definition of an "experienced" developer is subjective and varies widely. Startups with younger management may (incorrectly or not) apply senior labels to candidates with fewer years of experience and lower compensation expectations.

2. Anecdotally, I have seen startups in SF/NY take advantage of the lower earning expectations of candidates who are relocating into those metros and aren't prepared for the sharply different cost of living. There are places in the US where $90K goes much further and is a more competitive offering, especially for those who are willing to take less cash for the opportunity to work on something exciting.

3. "Developer" is a huge category. Some technical skills are far more scarce than others.

7
lambda9009 4 hours ago 0 replies      
Here's a way to counter this: interview, make them want you, and then decline any offer explicitly because of the comp.

Startup founders are trying to go (even more) lean and cheap out on salaries, relying either on inexperienced new grads, the insecure, or on a "rah rah go team, the company is priority #1" culture of self-sacrifice. Don't play into it.

8
carsongross 4 hours ago 2 replies      
Low salaries and negligible equity are the natural consequence of there not being enough technical talent in the Bay Area.

...

9
UK-AL 5 hours ago 1 reply      
You'd think developers would be good with numbers. But put $ signs in front of those numbers, and suddenly they're not very good. Trading away hard cash for gimmicks, and a tiny amount of equity in early stage startups.
10
untog 4 hours ago 1 reply      
In short: you know too much. These salaries are taken by fresh college grads who don't know better, and think the adventure of "a startup" is better than working for a larger company (it can be, but there's no guarantee).

Many startup CEOs would like you to believe they are the only ones doing interesting work, but there are plenty of larger organisations that are still fun to work for, and more likely to value you as an employee.

11
snorkel 4 hours ago 2 replies      
Bachelors. Not as in Bachelors degree, but literally bachelors: They're young, cheap, work crazy hours, and easily seduced by free pizza - the ideal startup employee.
12
alain94040 4 hours ago 0 replies      
$90k in salary for an experienced developer and 0.05% equity

Yes, that looks wrong. Equity should be 10X more (0.5%). Whether it's a good deal for your situation or not is a different discussion, but at least that would be more in line with typical deals.

13
bryanlarsen 4 hours ago 1 reply      
Equity positions are very negotiable. Ask for more equity, a lot more, like 1 or 2 percent.
14
beat 4 hours ago 0 replies      
Are you living in the Bay area now? If you're not, and you're living in a city with any sort of active startup community at all (like any big city in the midwest, for example), try finding a startup at home. It'll be cheaper, you don't have to uproot your family, and you might get a much better deal.
15
OliverJones 3 hours ago 1 reply      
Don't worry about playing hardball in the negotiation. You can preface your negotiation by saying something like this.

"As long as we're on opposite sides of the negotiating table, I am going to do my best to get a fair share of possible upside from your company, and a decent salary. When we conclude this negotiation fairly, we'll be on the same side of the table and working towards the same goals."

"Now, I want half a percent and $110K."

Keep in mind that your BATNA (best alternative to a negotiated agreement) is to say, "No thanks. Good luck." They need to hire somebody: time is money at their stage of business. You don't need to jump into their job.

But don't have this conversation at all unless you think their business idea is worth five years of your life.

16
minimaxir 3 hours ago 0 replies      
Relevant to this discussion: A startup job ad for $40k salary in SF.

https://news.ycombinator.com/item?id=8880544

17
eyeareque 3 hours ago 0 replies      
You can always negotiate more, if you can convince them you are worth the investment. They might be willing to shell out more compensation if they really want you.

And not all corporate jobs are boring. Find one that fits what you like to do.

18
tarr11 4 hours ago 0 replies      
They are fishing. All they need is one developer to take this deal, not all of them. Just ignore it and move on.
19
klochner 4 hours ago 1 reply      
They're offering you the comp of someone who just graduated, they may not realize that though.
20
MyNameIsMK 2 hours ago 0 replies      
Here's a suggestion, as an experienced developer, why don't you take a risk on yourself and start your own company?
21
qodeninja 4 hours ago 0 replies      
If youve got a job already just hold tight, Q1 isn't even over yet. Most hiring kicks up again right before the spring when the sun is out again

If startups aren't willing to provide the means they don't deserve good engineers.

22
pjdemers1 2 hours ago 0 replies      
I read this as "this is the worst job at a 'startup' that's never going to have big exit"
23
endeavour 4 hours ago 0 replies      
It's even worse in Europe.
24
wildpeaks 2 hours ago 1 reply      
90k is "low" ? Don't ever leave the Valley, you'll be even more disappointed
25
hyperbot 4 hours ago 1 reply      
If the pay is not high enough for your needs, you shouldn't bother looking at startups, or at least you shouldn't be looking at pre-series-A startups. Everybody has their own motivations for why they choose to work somewhere, and money/compensation isn't always the top consideration. At early-stage startups where money is tight, salary will usually be difficult to negotiate too much, but equity can be negotiated more easily.
26
malditojavi 4 hours ago 1 reply      
Startup jobs are the new corp jobs.
27
7Figures2Commas 4 hours ago 3 replies      
What are you expecting from pre-Series A startups? There are lots of pre-Series A startups with six figures in funding and little to no revenue. For obvious reasons, most of them are not going to be paying $140,000/year and if they are, you might not be comfortable with the runway risk.

In terms of equity, since you mentioned that you are the breadwinner for your family, why are you sweating the equity? A lot of folks here will no doubt suggest that you negotiate for more equity, but equity won't pay your bills. If cash is your biggest concern, negotiating around equity is pointless.

It sounds like you want a very early-stage startup job with BigCo-like pay, meaningful equity and reasonable hours. For the most part, this is a dream.

28
informatimago 4 hours ago 1 reply      
You missed H1B.
Someone Mailed Me an Amazing Phishing Page of Google Login
points by h43k3r  1 hour ago   11 comments top 7
1
smt88 1 hour ago 1 reply      
Unfortunately, some idiotic companies actually do use non-standard domain names.

For example, my Citi credit card uses "accountonline.com" as the login page. With things like that, "googledrive.com" seems less suspicious.

So to anyone building for the web: please use a single, canonical domain name!

2
shiftpgdn 12 minutes ago 0 replies      
Goodness I'd have even gotten busted by that. That's quite clever.
3
mod 1 hour ago 1 reply      
Re: 2-factor auth:

Couldn't the app try to login, detect the 2-factor, and ask you for that in the response?

4
harshil93 1 hour ago 0 replies      
Holy Shit. It looks damm original
5
n-gauge 1 hour ago 1 reply      
the only give away is the ')); characters in the bottom left of the screen
6
h43k3r 1 hour ago 1 reply      
I would love to know the technical details behind the creation of this page.
7
benshyong 1 hour ago 0 replies      
wow this is ridiculous
Ask HN: How to work with people who's just waiting for an exit. #startup
points by unitard  1 hour ago   discuss
Learn web design?
points by mhlg  4 hours ago   4 comments top 4
1
ralmeida 3 hours ago 0 replies      
Depending on how much you are looking to invest, take a look at some design courses and books online. A good portion of them are targeted to developers who want to get better at design, as it seems to be your case, not only people looking at design as a career choice.

Some links to check out:

Hack Design - hackdesign.org (free)

Design and Aesthetics course on Treehouse - teamtreehouse.com (25 USD / month)

Design Lab's Design 101 - trydesignlab.com/web-design-course (299 USD, six weeks. You work through the couse with a professional designer from mostly well-known Valley companies and startups, who you send assignments to and they give you feedback. Check out their profiles pages of students, so you can see the feedback received by other students, it's a good way to learn. I'm looking to try it in the near future).

Nathan Barry's books on design - nathanbarry.com/books (39 - 249 USD, depending on if you want the videos and supporting materials too).

2
talles 2 hours ago 0 replies      
I bet there are books on the subject, but I'm not a designer myself.

Codeschool has a Fundamentals of design course, but I didn't take the course myself. But judging by the quality of their other content it's probably good material: https://www.codeschool.com/courses/fundamentals-of-design

3
shogun21 4 hours ago 0 replies      
I like checking out http://www.smashingmagazine.com/, as well as their ebooks.

The best way to learn design is looking at existing designs and what works about them or what doesn't work. http://www.awwwards.com/websites/clean/

Design is an iterative process. Do you rough out ideas on paper before starting to build them? Paper prototyping in the beginning can save hours/days of work down the line.

4
chpp 4 hours ago 0 replies      
For business purposes, chopping up templates gets the job done. I personally have accepted the fact I do not have the "aesthetic eye" for design.

If I wanted to get that "eye" I guess I would look at successful websites, learn about design and what catches/pleases readers. How readers see websites in general and what is appealing, then just try things.

I cant recommend taking my advice but that's what I would do if I wanted to increase my design knowledge.

I bought js.org and want to give it back to the JavaScript community
points by jsorg  22 hours ago   20 comments top 8
1
yunyeng 18 hours ago 2 replies      
Lets create an online Javascript bible, not the frameworks like angular, ember, backbone etc... But core javascript, objects, constructor functions, bitwise operators. Everything about Javascript language should be there.
2
matt_s 6 hours ago 0 replies      
There is site called Ruby Toolbox[1] and I find that helpful for doing the initial research for a library and if its active, useful to me, and how popular.

An initial Google search indicates there is a site like this for JavaScript, but checking it show it is an internet lifetime ago (5-6 years).

A fact based inventory of major JS libraries with downloads, bugs and updated_at stats would be helpful. The challenge would be keeping it fresh. If project "owners" can submit their own info that would help.

[1] https://www.ruby-toolbox.com/

3
josemando 18 hours ago 0 replies      
You could focus on redirects, maybe some for npm modules, other for jquery plugins, etc

Also you could link/redirect references, like the Mozilla one https://developer.mozilla.org/en-US/docs/Web/JavaScript (Mozilla rocks \o/)

4
califield 21 hours ago 1 reply      
You could make it a redirect service for npm modules.

e.g. https://js.org/express 301 redirects to https://www.npmjs.com/package/express

Another idea is a blog. One of my favorite blogs is http://npmawesome.com/

5
galfarragem 19 hours ago 1 reply      
You could somehow use it to establish kind of an official page to JS-community. Right now js-community is divided, there is the angular community, the jquery community, the node community, the meteor community, etc, but a JS community that would aggregate all JS project communities is not organized yet. Without it JS will always look less popular than it really is.
6
striking 22 hours ago 1 reply      
Free subdomains and email would be really cool, actually. However, who is "Everyone"? Who gets a subdomain/email address?
7
thekillerdev 19 hours ago 0 replies      
subdomain + email is a good thing, setup a invite only "not so" closed beta staging, see if it works. Write a user agreement understanding that this is a test enviroment and making them aknowledge that all their data hosted on that email can be erased.

So you are safe, and can see if it at least work it out.

8
kevinsimper 7 hours ago 0 replies      
Emails for open sources projects would be awesome!
Ask HN: If you're ridiculously in love with Python, do you even know it well?
points by cakoose  8 hours ago   40 comments top 17
1
nickysielicki 6 hours ago 1 reply      
No, python is the programming language that everyone thinks Java is.

Is Java slow? Nope. Does everyone think it is? Yes. Is python? Yes.

Does Java have the best libraries? Hell no. Does everyone think it does? Yep. Is python really the language with the best libraries? Yep.

Python is easy to write, and to write well. Python makes it easy to crank something out in half an hour that isn't messy.

I am ridiciulously in love with python, although lately I have been placing more value on runtime speed than development speed, so I find myself using it less than in years prior. It is still my favorite programming language, however.

2
famousactress 6 hours ago 1 reply      
Okay, I'll go against the grain here and sign up for scrutiny:

I probably regularly profess my love for python, and I'm prone to hyperbole (plus I love the word 'ridiculous') so I could totally see myself making that statement.

So now, do I know it well? I dunno, not that well I guess. I've been doing it full time for four or five years now (after a decade-plus of other languages), I imagine I'd rank pretty competent in an average shop and "lots to learn" over at say, Dropbox. I have definitely worked with it enough to be exposed to loads of it's shortcomings and flaws though. I still love it. Just like with people, love is a decision I re-make on a continual basis. I sign up for the less ideal bits because the good bits make me really delighted and "just fit".

So anyways, yeah.. I know it's popular to be the "I don't care, anything works, best tool for the job" person, but I'd prefer not to write any more Java code anytime soon if I can avoid it. I guess I'm not that kind of awesome-flexible.

Now as for employers, even I might take this as a negative signal. I love python, but hiring in one's own image on that vector seems a little strange... unless there's a really good reason a passion for python is important (like, I dunno.. Maybe the position is for the python team at NewRelic? Anywhere the company's future is pretty latched onto the language specifically).

3
Iftheshoefits 6 hours ago 0 replies      
I find myself reacting more and more negatively to "language-specific-experience-required" statements in a job posting for a full-time employee. It's fine for a contractor or consultant needed to solve a specific problem or set of them on a time-limited basis. For a full-time employee however such language is, in my opinion, an indicator that at least one of the following apply:

a) the company is looking for junior level talent with specific language experience so they don't have to train them

b) the company is looking for senior level talent but thinks it can't afford them using any time to pick up the syntax or quirks of the language

c) the company is looking for senior level talent but doesn't think it's even possible a competent senior developer with mostly X experience and no Y experience can pick up Y in an "acceptable" amount of time

d) the company is so invested in their "stack" that (even considering) deviation from it will introduce a net negative (to the process, culture, whatever)

These all have a common theme: the labor that provides the bulk of the value they are able to trade and profit off of is seen as a commodity, as fungible as the brand of paper used in the printers. The company wants a developer who works "out-of-the-box" without any investment and can be discarded/upgraded at any time for any reason. They probably also want the human line-item to display a near-maniacal enthusiasm for the work and loyalty in return.

It's not that they want people who aren't discerning: they probably don't care, as long as the people they hire can fake it.

Also, being "ridiculously in love" with a language doesn't mean one doesn't know it well. For me, it's the opposite: I'm "ridiculously in love" with C++ because I know it as well as I do (which isn't to say I'm an expert). That doesn't mean I'm going to turn down non-C++ jobs or view them as being less interesting, etc.

4
falcolas 6 hours ago 3 replies      
Over my career, I've gone from loving Python, to having been bitten enough by it to evaluate and use other languages.

Most of the time, it's "fast enough" for the job. But when it isn't, it really isn't.

Most of the time the standard libraries suffice for a job. But when they don't, you're suddenly in pip/easy_install hell. [1]

Most of the time you can get by with Python 3. But when you need to broadly distribute code with a dependency on a compiled binary, may the heavens help you. [2]

Most of the time, the syntax and "magic" won't bite you. But when it does, it does so hard. [3]

Most of the time, pylint/pychecker/etc. will find the same errors a compiler would...

You get the picture.

I still program with Python frequently, but I've increased the size of my programming language toolbox to compensate for its weaknesses.

[1] Or was that virtualenv, or setup.py, or apt/yum/nix, or...

[2] Broadly distribute means putting it on boxes where a C compiler is not available. This means you typically get to pre-compile those libraries and create either wheels or native packages. Not impossible, but for a "batteries included" high level language it's a lot of specialized low level grunt work.

[3] The infamous `def a(b=[]):` "feature" for one, anything involving metaclasses for another.

5
sedeki 7 hours ago 1 reply      
It's just common job ad speak. You shouldn't take it too seriously...
6
jokoon 5 hours ago 1 reply      
You don't really need to know a lot of python to know it well. For example, you might need to know a lot of C++ to know C++ well.

Python is great because it does a lot, while being easy to understand, and it only does what matters the most.

> More broadly, who is that phrase supposed to appeal to?

I guess it tries to appeal to programmers who cares about using a technology they're comfortable with, but also that encourages good enough programming practices, design choices and programming philosophy.

Python is really a great choice for many things, and apart for the particular indenting style, I really don't think there are many users who dislikes python. It's also very unix friendly, has the good parts of C, has native tuples and hashmap, etc. I don't see many bad things about python.

Of course, python has never been designed for speed, but every programmer should know that the language will not be the source of sluggishness, the code and software design will be. I don't think there are many projects out there who will need high performance vectored data processing, and if there is, either use cython or optimize the parts you need, or even use OpenCL. Making a large video game projects is another subject, as most of them often use C++ anyways.

7
csixty4 6 hours ago 0 replies      
You're on the right track toward the end. It means they built their MVP in Python, and they've built more & more features on it in Python. Now they're looking for someone who will happily work on their existing codebase. They want it to be the best Python it can be. They want someone who knows the language inside & out; someone who goes to Python conventions and follows all the big Pythonistas on Twitter to get all the latest tips & tricks. And, they don't want daily requests to rewrite the whole thing in some developer's favorite language.

It wasn't that long ago people were clamoring for all the PHP in the world to be rewritten in Python. Ten years ago, I was part of one of thousands of efforts across the globe to rewrite a legacy codebase in hot new J2EE awesomeness. Around the turn of the century, it was a push to replace ancient COBOL with hip, modern C++. There's always a hot new language that makes the old hotness look ridiculous in comparison. This industry is like the fashion industry in more ways than we're willing to admit. But it's totally possible to run a successful business on a language with warts. Yes, even PHP.

If you ask them, they'll probably tell you they really do want someone discerning, someone passionate about programming languages. But right now they've prioritized their business needs over a rewrite for the sake of a rewrite.

8
ctdean 5 hours ago 0 replies      
Job posts are marketing ads, so don't take it seriously. All this posting is hoping to do is to attract people who like Python and get them to apply.

This won't get 100% of the applicants you want but it will get some of then, and that's the whole point.

9
porter 7 hours ago 0 replies      
Sounds like they are targeting a jr programmer who learned java/c++ in school but absolutely loves python in comparison, which is easy to love coming from java or c++. Nothing wrong with that, just sounds like you are not their target for this job.
10
spacemanmatt 6 hours ago 0 replies      
"ridiculously in love" with a programming language?

Ok, I'll describe my condition when I experienced that. I was coding in C under MS-DOS and PIC assembler at the time. C++ was starting to become a thing, and I was just starting to sniff at Linux. I needed a change of venue in several major ways.

About this time, I started picking up a little python and perl. Interpretive languages had just opened up to me, and I was IN LOVE. The things I could do without writing a framework to support it impressed me a lot.

I was so very naive that new-to-me language features were a huge deal.

Hope that helps.

11
lojack 6 hours ago 0 replies      
I'm ridiculously in love with python. For what I do, there are lots of high quality, actively maintained libraries. I understand its shortcomings, both as a language and as a community. I also understand that given a slightly different path, I would be equally in love with other language choices.

Does this mean I probably don't know the language well? Maybe. Honestly, none of this really matters to me as long as I can quickly understand code other people wrote, and I can efficiently write maintainable code.

12
bsdpython 4 hours ago 0 replies      
Translation: they want a Python expert who can come in on day 1 and fix all of their buggy code and churn out massive amounts of Python code. Since you love Python so much you won't care if the product is boring, you won't care if you are being underpaid, you won't ask to work on other development domains and you certainly won't ask for a promotion.
13
oliwarner 5 hours ago 0 replies      
I don't look at the statement and think of all the loopholes, no.

If they're asking for this, it's clearly because they're committed to Python and they want a developer equally fanatical about Python. I doubt this is the only condition for getting the job, experience will account for something.

In answer to "who this will appeal to", many people love Python, know Python and would like to use Python more. Sticking this in your advert clearly marks this as a company who you will align well with.

14
jacksayswatt 7 hours ago 0 replies      
I don't subscribe to the practice of being in love with a language,being a ninja or a wizard I find these are callings for those who will work for less than they are worth. You are speaking to their hubris and not their confidence of skill set.
15
bitwize 4 hours ago 0 replies      
Recruiter: I get the feeling that you're not really passionate about these languages and technologies.

Me: A language is a language. I'm passionate about working in a sane environment with good practices, delivering software that doesn't suck.

16
damon_c 6 hours ago 1 reply      
It's a good point. With many domains... the more deeply you know something, the more you know about the grimy details, and the likelihood of unfettered love for that thing is reduced.
17
svisser 6 hours ago 1 reply      
Sorry, but you seem unable to see why people like Python (or a different language X). Until you see that, you won't understand why job postings are written like that.

This is not to say Python (or X) is a perfect language or that you have to agree with those that like it - it's just not your language.

It's time to abolish the HTTP referer
points by marco1  16 hours ago   11 comments top 5
1
logn 12 hours ago 1 reply      
Worth considering Tor browser's stance on this (and a plethora of other issues). See A.1. Deprecation Wishlist

https://www.torproject.org/projects/torbrowser/design/

I happen to disagree with Tor on this though (they worry about breaking sites). I've found that setting referrer to target site's host has pretty good results (this can be done with various plugins).

In general, browser maintainers seem to prioritize compatibility over security. I think a new browser or fork that prioritizes security, possibly Tor, will eventually become dominant. And I'm excited for Servo, the renderer to replace Gecko, which is written in Rust (memory safe).

2
gergo_v 6 hours ago 1 reply      
While the concern for user privacy is certainly understandable, abolishing the HTTP referer does not solve the issue. In fact it can be argued that it could do harm than good - basically every web based business relies on it in one way or another (customer acquisition channels, news mentions, backlinks, attribution, etc).

The referrer itself is not at all used in tracking the user - as the visitor data is usually aggregated by referring source. Fingerprinting and evercookies are much more common ways of tracking individual users, and you can bet that there are even more advanced methods available for government agencies with service-level access.

3
tantalor 16 hours ago 1 reply      
It's a good thought... can you expand on it? What is the state of Referer in modern browsers? Why keep it? Would removing it break anything?

File bugs against browser developers to remove Referer.

Meanwhile users can disable Referer,

* https://chrome.google.com/webstore/detail/referer-control/hn... * http://www.technipages.com/firefox-enable-disable-referrer * http://www.nullrefer.com/hide_referrer.html

It could also be removed by a proxy.

This becomes less of an issue as sites move to https, where Referer is not sent.

4
mdpm 13 hours ago 1 reply      
I've seen this as a security issue several times, where older enterprise tools have embedded URL session keys (horrible, I know) or other private data, and act as the referrer to public sites. This either exposes more of these tools' data and functions to traffic sniffers, or malicious site operators.

There is no legitimate purpose to the referrer within applications that isn't replaceable via internal claims based tokens, or external sites' parameterised (thus, opt in) source tracking.

5
Perdition 8 hours ago 1 reply      
This would break too many websites (I've seen it used by a lot of banks as part of their authentication systems) to get through any kind of standards committee. Instead download something like RefControl, and advocate for browsers to include such functionality in their core.
Ask HN: Should I do a closed beta stage of my SaaS?
points by foxpc  7 hours ago   6 comments top 4
1
jf22 6 hours ago 0 replies      
You should allow in as many users as you can handle the support and feature requests for.

One user can take up to 90% of your time, other times ten users come in and happily use the software with no complaints.

Take their feedback with gmail. Don't get too fancy.

Proactively ask for advice and comments. Sometimes people don't complain until they leave.

2
webstartupper 4 hours ago 0 replies      
1. In case you do not currently have a marketing site that lets people signup for an invitation to the beta, stop all development and create the marketing site right away. Having this done before you code lets you gauge whether your value proposition resonates with your target audience.

2. Start sending prospects to the site (post to forums where your customers hand out, run some ads via adwords or facebook etc) and let them sign up for the beta invitation. During the signup, get some additional information in order to segment them for step 4 below. Be very clear that your product will be in a beta stage, so that customers know there may be bugs/unfinished features. Promise to grandfather in the beta customers for a significant lifetime discount once the beta is over (and actually do so when the time comes).

3. Code and get your product ready for beta. This should be the minimum viable product and you can call it beta v1.0. Now segment your list so that you allow only x customers for v1.0, then later y additional customers when you go to beta v2.0 and so on. This will ensure that you do not get overwhelmed with too many customers giving you too much feedback. Depending on your product, segment the customers based on niche, so that you can focus all your energies creating a product solution fit for that specific set. Each beta cycle should be iterative - learn, build, measure.

4. Charge for the beta v1.0. This will go a long way in validating your idea and your product market fit. If you are not sure what to price your offering at, go with your gut instinct. You can always increase or decrease pricing later.

5. Take feedback over skype, phone or email. If you start with a small set of early customers, it should be possible for you to spend enough time with them. Scaling using UserVoice can be done later, since you are limiting the first set of customers.

3
davidw 7 hours ago 1 reply      
The sooner you get paying users, the better, because then you can figure out what they really want and move in that direction.

Depending on what kind of users you have in mind, HN may or may not be a good place to find them. There are plenty of products, like patio11's stuff, that probably don't convert at all from HN since we're not his target market. Maybe find a niche and concentrate on that?

I'd just use email or the phone for feedback.

4
tmaly 7 hours ago 0 replies      
I am in the same boat, I plan on just releasing mine out into the wild. I want as many users as soon as possible so I can get feedback and tune features.
Ask HN: What is unique about your company's culture?
points by bugsbunny123  16 hours ago   3 comments top 3
1
monkcoder 1 hour ago 0 replies      
We're all kids on the inside. Some show it more than others, but there is that underlying inquisitive heart and mind that each possess to create some of the most beautiful love of science that I've ever seen.
2
throwaway985 3 hours ago 0 replies      
A complete and total disregard for coworker's personal space and privacy.
3
patrickfl 16 hours ago 0 replies      
Good question. I don't work at a company with a lot of culture so I'll refrain. I'd like to see answers to this from the same company, but the CEO's perspective vs a mid level workers perspective.
Resellerclub Scam in Google Analytics Organic Search Keywords
points by shadylane  7 hours ago   1 comment top
1
payalkapoor 2 hours ago 0 replies      
First thing is that resellerclub scam is not any visitor, but just a part of ilovevitaly.com which is affecting millions of Websites. They do not visit your Website, they just appears in your google analytics and badly affects your rankings and SEOs. It is trying to misguide you that it is recommended from google, so please be aware of these type of spam traffics which is nonhuman and operated by Russian organisation Hosting Telesystems network.

Same problem i was facing in my analytics and then i found this link and my problems is solved now.i am definitely sure the resellerclub scam refferal traffic would stop. Please follow the below article :-

http://techgnews.com/tips-tricks/resellerclub-scam/

Resellerclub Scam in Google Analytics Organic Search Keywords
points by shadylane  7 hours ago   1 comment top
1
payalkapoor 2 hours ago 0 replies      
First thing is that resellerclub scam is not any visitor, but just a part of ilovevitaly.com which is affecting millions of Websites. They do not visit your Website, they just appears in your google analytics and badly affects your rankings and SEOs. It is trying to misguide you that it is recommended from google, so please be aware of these type of spam traffics which is nonhuman and operated by Russian organisation Hosting Telesystems network.

Same problem i was facing in my analytics and then i found this link and my problems is solved now.i am definitely sure the resellerclub scam refferal traffic would stop. Please follow the below article :-

http://techgnews.com/tips-tricks/resellerclub-scam/

Ask HN: How do people with successful careers play the game?
points by nns  1 day ago   14 comments top 8
1
marypublic 1 day ago 1 reply      
Read this book: http://www.amazon.com/How-Star-Work-Breakthrough-Strategies/... and do what it says.

(I am a senior technical resource in an environment like you describe. Read this after I was pretty far along but it basically sounds like how I operated to get where I am.)

Don't waste time. Be mission/vision focused. Be polite to everyone always. Be helpful whenever possible. Be insanely organized. Do not be That Guy/Gal who is always forgetting things, late to meetings, doing the wrong thing, asking stupid questions about stuff that's already been covered in meetings, etc. Seek and respond to constructive feedback on your work. Do the sh#t work without whining. All of this will build human capital with other people in the organization, which will both practically give you more resources of help from others to draw on in your work requirements, but also increases your visibility with people who aren't on the front lines doing the work (e.g. Management). That visibility gives you the means to move in whatever direction you might desire. It also (for want of a better way to put it) usually tends to help make you layoff-proof because people know you are competent, professional, and have some flexibility to work as part of a team.

None of this means you are anyone other than who you are. Don't kiss anyone's a##, but also don't be an a##hole. At the end of the day with two people even remotely similar in "technical" capability, personal behavior will matter for increasing your effectiveness within any organization.

2
percept 1 day ago 0 replies      
In a truly dynamic environment there should be more opportunity to figure out where you can best contribute as a team member. (Work is about more than simple technology.)

Maybe you're blocked in some areas, but are there others where you can help with your unique combination of knowledge and experience?

It doesn't even have to be directed at the core of the project. Some teams aren't good at creating infrastructure; maybe there's a need in the areas of documentation, devops, or bug tracking and fixing. Stuff others don't want to touch.

Consider starting there. (And always be thinking about your next move.)

3
tixocloud 1 day ago 0 replies      
Be helpful.

A lot of people talk about playing the game. You don't have to play any game. Besides delivering the best quality work, Be helpful to everyone around you - including your boss, his boss, your peers, etc. Emotional intelligence is a huge component in driving one's career forward. Be sensitive to everyone around you. Know when to say and what to say at which time.

In addition to marypublic mentioned about being organized, I would say being able to communicate/articulate your ideas and turn them from complex details to simple nuggets of information.

4
alexpotato 23 hours ago 0 replies      
Every company/organization/group etc has multiple "dimensions" that they use to determine who is valuable and who is not.

For example, in a technical organization, one dimension might be ability to quickly create production level code. Another dimension might be ability to refactor legacy code.

In a sales organization the dimensions might be different e.g. ability to make existing customers happy vs ability to find new customers.

NOTE: even in the same company, one group may have different dimensions than other groups.

The key is to:

a. figure out which dimensions your company/group/manager are using to define value

b. if there are multiple dimensions, try to find the ones that are easiest/most natural for you but are hardest/least natural for others

c. focus on maximizing b

d. profit

Case in point: I once worked at a high frequency trading firm. I was one of the few people WITHOUT a STEM PhD. However, I was much better, relatively speaking, at over the phone customer interactions/support. Within a month of being there I was made Head of Customer Support purely as a function of being the group member with the best people skills.

Another key point, be wary of creating "Unspoken Covenants" e.g. "If I do X, my manager should do Y".

No they don't.

Go to your manager and say propose a mutually beneficial agreement. e.g.

You: "I would like an increase in salary/title/benefits/vacation days. I know that's a big ask but I know you value sales/code quality/production rate, correct?"

Manager: "Why, yes I do!"

You: "Great. I can improve that thanks to %ABILITY. If I do that can I get my initial ask?"

They should be saying "Hell yes!!" at this point. If not, you may have either misjudged what they value or you are dealing with someone who doesn't believe in mutually beneficial agreements.

5
sinelanguage 1 day ago 1 reply      
Neil Young said it best, "keep your head down and walk forward". Don't just look at the people who you perceive are moving forward, look at the ones that appear to be standing still, and what do you think is the difference?. Sure there are those that have moved forward due to being able to dramatize with success the superficial things and say/wear/do/hangoutwith all the right things and trick higher ups into believing they have more real authentic capability than they actual do, but that only lasts so long. Where you really move forward is in your authenticity. If you authentically love what you do, and you excel at it, and you look forward to advancing it forward no matter where you work or what you're paid, then you're pretty much invincible. You will naturally exude passion for your chosen skillsets, you will embrace all that is thrown at you with gusto, and people will naturally gravitate towards that. Most of all, pay it forward. Mentor those around you in the same skillset area, and make a difference and demonstrate that even though you are an expert and SR level in your field, that the success of the team is rooted in the power of everyone being able to produce at the same level as you. When you do that, whether you are intentionally trying to impress your superiors or not, it won't matter, they will notice, and if they don't, then you have some choices to make. In field of dreams, the phrase, "if you build it they will come", applies to you as a person, if you become the highly skilled, sr level expert, that exudes passion and innovative mindsets, people will come, they will gravitate towards it and you will be successful. Maybe not as fast as those just phoning it in and playing the parts really well, but slow and steady always wins the race. I work in a highly competitive environment and I am not even a full time staff, yet because I practice what I just preached, whenever a PM needs dev work done, my name usually comes up very early in the conversation. That wasn't a calculated thing on my part, I didn't play a game, I didn't coax anyone my direction, I just work really hard because I love being a developer, I constantly evolve and advance my skills because I feel empowered when I build more advanced things with code, and my authenticity and passion is obvious and authentic and people with good intentions will always appreciate that and gravitate towards it. Now does this work EVERYWHERE? Hell no, but its up to you to decide what works for you in terms of where you work, and don't compromise your authenticity just to move up or make more, its not worth it in the end.
6
partisan 1 day ago 0 replies      
Sounds like a great place to be. I would say you should pick someone who you admire most in the group and try to emulate their behavior.
7
rubiquity 1 day ago 1 reply      
I would work on finding an environment where only high quality work matters. If you're in an environment where ass kissing matters you aren't actually in a high quality environment.
8
bjourne 1 day ago 0 replies      
What is a successful career to you?
Gender and tenure diversity in GitHub teams relate to higher productivity
points by bvasiles  14 hours ago   3 comments top
1
sgentle 12 hours ago 1 reply      
This is an interesting post, but I think it would be better posted as a link rather than text. I believe text posts are penalised in the news rankings and, at least in my experience, tend to get clicked on less.
Ask HN: How do you read HN without mark as read extension?
points by SebKba  12 hours ago   6 comments top 4
1
foxpc 12 hours ago 1 reply      
If I'm on the same machine - the links are gray so I just skip them.

Of course, coming home after work means I might just open same links I have opened at work.

Though, I'm not overcomplicating it all.

2
adrianhoward 11 hours ago 0 replies      
I just read it once a day because I have shit to do. So revisiting old stories is rarely a problem.
3
ldenoue 10 hours ago 0 replies      
I did http://www.appblit.com/hn but I usually read HN on my iphone using iHackerNews.com
4
mazmanr 12 hours ago 1 reply      
I read it primarily on my iPhone and the app has this built in.
Ask HN: How do you find freelance/contract gigs?
points by eatonphil  3 days ago   104 comments top 46
1
keithwarren 3 days ago 9 replies      
I have been on my own for 15 years. I bill around 150/hr give or take 20% depending on the situation. Most of the work is Microsoft stack web related but mobile apps and api building has been steadily increasing for a several years now to the point that probably 20% of my 2014 revenue was in that space.

50-60% of my revenue is sub-contracting. I have a few firms that often take on projects that they are not suited for or do not want to increase staff to cover and they often sub out all or parts of the project to me. These relationships were built through networking with other developers who worked for these companies - never the bosses per se. Meet other devs and when the company needs help, they remember and recommend. In my experience this kind of introduction is about 5x as fertile as a cold intro.

Roughly 30% of my revenue is from direct relationships between myself and another company. These tend to merit a higher rate but also increased risk.

Very few of my direct relationships start from cold calling/intro (not sure if any ever did actually); most came via word of mouth recommendations of other people. Networking at the right kinds of events can also increase your profile and help you meet the right people.

ProTip: Networking at networking events is a terrible idea.

Lacking a sales force the best pseudo sales force you can create are acquaintances who understand your skill set and respect you as a person. They don't need to see your work, they don't need to have hired you before - to drop your name to someone who asks. They need to know your name, what you do and have a generally good feeling about you. If you pay them back for this, even with a simple thank you or lunch - they will continue to be an advocate for you.

Another tip which probably falls into the anecdotal evidence category - get off of ODesk and ELance. You are right about the price war. Your name and value to people also gets damaged because you seem to be just another guy among thousands who need to find work that way - it is a 'dime a dozen' mentality and they will always see you as that.

2
msutherl 2 days ago 0 replies      
Pro tip: when people say "build a network," they really mean "make friends in your and related industries." Like, actual friends: people you go out for drinks with and enjoy talking to. The trust you build, as friends, will lead to work.

Normally you meet these people in unexpected ways. Just today I was offered a potential job from a girl I met while auditioning apartments. I've also gotten jobs from people I've met on dating websites, on the train at 2am coming home from a party, and on unrelated online forums.

Leave the house, keep an open mind, be friendly.

3
USNetizen 3 days ago 0 replies      
Network, network, network. Referrals are the prime driver of business for many, if not most, freelancers. When you get a client and have done good work, ask them "what three other people do you know who could use my services?"...things like that. Don't be afraid to ask for it. Get out of the home office and attend events and conferences. Start meeting people and ASK for their business. Don't be shy about it.

Also, don't expect much from cold emails. It's way too impersonal. Telephone calls are only slightly better, but in-person events are by far the best. Your goal should be to MEET as many people in-person as possible.

4
notduncansmith 2 days ago 0 replies      
I do business pretty exclusively through referrals in my network. Every now and again someone will find me through my site, but I do 0 outbound marketing/sales. Caveat: if I were consulting full-time, I would be doing content marketing and have an autoresponder series.

Actionable tip #1: whenever you do work for someone, be sure to get a testimonial. If possible, do a full case-study on your engagement. Feature these prominently on your site. Then, just keep in touch with everyone you do business with. DON'T directly ask for referrals. Just ask how their business is doing. Make it about them. They'll remember this and like you for it, and you'll be at the front of their mind when the topic of consultants comes up.

Actionable tip #2: read this blog post by Patrick McKenzie, the man's advice is pure gold. http://www.kalzumeus.com/2011/10/28/dont-call-yourself-a-pro...

5
Loic 3 days ago 1 reply      
Build your network and nurture it. Then, after a while it will come along nicely. I run my business in the field of chemical properties, fluid phase equilibria, so really a niche market, but every year, I send a card to all my contacts in the field (100+ cards) and I try to write a personal note for each person. I takes time, but it now a kind of tradition I do not want to break (started for 2008). On the back of the card, I have a link to a summary of my year and what is coming next. 80% of my contracts are coming after such card.

Front of my 2015 card:

http://ceondo.com/media/files/img/2015-small.jpg

I use Moo to print the cards, quality is great and service excellent. This is a referral link, just remove the /share... if you do not want to follow the referral.

http://www.moo.com/share/28nw8g

6
asgeo1 2 days ago 0 replies      
I get most of my leads from either:

* My website. I rank reasonably well in Google for search phrases such as "Freelance Developer in $mycity". Probably if I blogged I would get more traffic. But it doesn't hurt to get a website going, and see if you can get ranked in Google for a particular geographic area. I suppose it's only really useful if you live in a city large enough that businesses are trying to find developers in via Google.

Also I've found that the people who do search Google for developers in a geographic area, are generally doing this because they want someone local, and have often previously tried offshore developers and not liked the results.

* LinkedIn / Github / Stackoverflow - occasionally I get leads from these sites. LinkedIn is easily the best of the three. I don't think you even need many connections on LinkedIn (I've only got 60). I think I just show up in the search results. Usually LinkedIn you will get recruiters looking to fill a contract job. Github/Stackoverflow are usually other developers from a company looking for someone to help out on a project.

I'm a bit disappointed in Stackoveflow Careers - I've never had a lead from there, which is odd.

* Referrals. This is probably the best way to get work - it would be hard if you were young and just starting out I guess. I've found that now and then clients will mention you to other potential clients, and it does kind of snowball a bit once you've worked for enough people.

7
FigBug 3 days ago 0 replies      
I've been contracting for 4 years. I have received 1 job via my website. The rest have been through contacts, primarily through people I previously worked for when I was a full time employee. I've got a few through people I know from cycling. Cycling is apparently the new golf. http://www.economist.com/blogs/prospero/2013/04/business-net...

I find events and conferences to not be much use, unless they are very specific to your industry.

8
dmarques1 3 days ago 1 reply      
There are a few services now that scour dozens of sites around the web for freelance dev jobs, haven't tried one yet but have considered:https://freelanceinbox.com

http://letsworkshop.com/

http://freelancefunnel.com/

https://freelancedevleads.com/

http://www.flexjobs.com/

9
netaustin 2 days ago 0 replies      
I run a medium-sized digital agency that started as side work that my co-founder and I basically fell into. We ran our business on the side for about a year before going full-time. I would advocate stepping back and asking what you're really looking for out of the time you have and proceeding carefully.

Selling software development services as an individual is extremely risky, especially if you are selling services to buyers who are not tech-savvy. It takes patience and energy, and software developers have a finite amount of these resources.

Serious consulting generally requires daytime availability. It's a slippery slope from "side hustle" to "leading a double life." If extra income is what you're after, is it an option to change jobs for better pay, or to get more income from your day job?

One bit of advice if you stick with this plan: you can make the sideline nature of the contract work a benefit in your clients' eyes if you set your rates at a level where they feel like they're getting a good deal compared to what you'd be charging if you worked full-time as a consultant. You can also mitigate the cost to your performance at your day job if you consult on a different technology than you use at work.

But if your day job is in professional services, I strongly recommend against contracting on the side. If it's all you do, work-for-hire will slowly kill you.

10
dannyr 3 days ago 1 reply      
I did contracting for over 2 years. All my contracts were through a referral from my network.

I never had to do cold-emails.

I live in the Bay Area though where there are a lot of companies looking for somebody to build their Android app.

What's great with the network though is that I never had to negotiate rates since there's already some trust established.

Those who found me through LinkedIn though seem to negotiate a lot with rates which can be a pain.

11
lwhalen 3 days ago 1 reply      
Not to hijack someone else's thread or anything, but if folks have a line on a site that pairs 'people who need *nix-based system administration/automation/devops-anything' with 'system administrators/automaters/devops engineers' and could post it, I would be deeply grateful.
12
clapas 1 day ago 0 replies      
I am in a similar situation to the OP and I'd like to thank you for all your valuable sharings.

For me, it seems obvious that referals are the best way to attract new clients, but there are times when you just don't have them. I agree with most of the comments about freelance sites not being worth the effort, but I want to contribute with my perpective on cold-emailing or cold-anything.

Although I don't have much experience, I found very usefull an advice from the blog of inboundsales.net: the people you contact when you do cold-something are regarded as "suspects" (everyone in your target market). As such, they will not be receptive to invasive sales messages, but they will value your knowledge and will appreciate any great content you are able to share with them, like infographics, non-demo videos, interesting articles about their problems, etc. Then, if they take action, they become "prospects", and so on. It is a kind of science, not easy for us computer geeks. I am starting with this in mind and hope it yields good results.

13
asfarley 3 days ago 0 replies      
I've had some success on elance. The trick is to be extremely selective about who you will talk to. Also, refuse to compete on price. The good clients will see the difference; if they're comparing you against a large firm, you will be competitive on price even if you're making a reasonable hourly rate.

Lately I'm starting to think that both of these points apply to freelancing/contracting whether it's online or through some other channel.

Also, build a decent portfolio of your work.

14
tomasien 2 days ago 1 reply      
I almost entirely use my network to get jobs - if you possibly can, build a personal network, because that network will start referring you to people as an expert. This will allow you to rapidly increase the price of your services. I know this is difficult to get started - but whatever you do to get your first few jobs, make those people into contacts and over deliver.

As a side note: anyone doing freelancing that is struggling with the tax part of it, would love to get your feedback on http://painless1099.com - a smart bank account for your 1099 income that does automatic withholding and helps make your tax situation more like that of a W2's. Product is deep in development by some awesome folks (I'm advising) and they still need more sophisticated eyes on it to get the alpha right.

15
cahlansharp 1 day ago 0 replies      
I've found that other programmers are one of the best places to get your first few gigs from. The best programmers are too swamped to take on extra work, and many are eager to refer rejected clients on to someone they can make a solid recommendation for.

So I would personally try to network with some well-known, talented folks in your own community and let them know you're looking. If they trust you and are good, you'll likely get referrals.

From there, if you treat your clients well and do good work, freelance will find you. You'll quickly find yourself having to say "no" to too much work. Word of mouth is a very powerful referral source when it comes to contract work. It can also work against you very powerfully if you don't do a good job or screw anyone over.

16
wsc981 3 days ago 0 replies      
Some companies (in the Netherlands) don't want to deal directly with freelancers, for legal reasons. Also, they don't want to bother looking for developers themselves, while at the same time they are not interested in providing developers with any permanent positions. Usually they use a middle man to find appropriate developers for a fixed fee. Such a middle man might be able to provide you with several clients you'd not be able to contact yourself directly.

Some headhunters don't mind dealing with freelancers either. Currently I'm freelancing through Computer Futures.

17
robwilliams88 2 days ago 1 reply      
I run workshop (a service mentioned already: http://letsworkshop.com that delivers freelance consulting opportunities)

I've seen this question come up a lot and its part of the reason I started workshop. For me emailing companies who specifically said they were looking was great because I was able to control it directly.

Since starting workshop I've helped hundred of freelancers make a lot of money, but some continue to make nothing. It mostly has to do with the emails they send and a few big common mistakes:

-- emails too long -- blab on about themselves-- obviously scripted-- don't propose a next step

It's easy to focus on the wrong things. "What's the Best job board?" "There's not my exact perfect match" "there's not enough opportunities"

But if you focus on emailing one person everyday that needs help, and write an email focused on their problem and not you, you CAN and WILL make a lot of money.

I've seen it with hundreds in your position

18
jules 3 days ago 0 replies      
Referrals, and some gigs found me after I wrote some technical articles. I have not done any cold calling and I have not used any freelancer sites. If you're good then it's a bad idea to participate in a lemons market. It's much better to start from a position where you don't have to convince your client that you are capable of delivering value.
19
damm 2 days ago 0 replies      
I've been a 'Contractor' since 2012 and I haven't gotten thrown out of my hose for non-payment of rent so I guess I am doing good.

First off:

There really is no good 'job' site for Contracts. There are a lot of 'Work From Home/Work Remotely' sites; but there is not one for contracting exactly.

What I do:

I network through people I know; cold calling can work if you see the company has a problem and you tailor yourself as the fix. But often those are short term gigs unless they love you.

Other than that.

Don't be afraid to post yourself on the monthly who's hiring and who wants to get hired. Making yourself visible will net a few responses that maybe gold.

Lastly, Stackoverflow Careers job has bene helpful.

Really last comment: http://thenubbyadmin.com/2014/01/20/best-list-of-remote-sysa...

20
phillytom 3 days ago 0 replies      
When I consulted I also offered training on different technologies, languages, etc. Training itself is not very lucrative, but it's great for lead generation.

Also, I'm surprised that no one has mentioned this yet, post in the HN Freelance thread on the first of every month. I've hired a number of freelancers from there.

21
raeldc 2 days ago 0 replies      
I became a freelancer shortly after graduating college. Though sites like Elance/Odesk/Freelancer.com(GetAFreelancer back then) provided me a platform to start with, it didn't take long before the cutthroat prices made it unsustainable.

The answer, which has been mentioned already by other commenters, is network. You need a great network and a great reputation. The real question is how do you build a great network? And how do you build a great reputation? As an introvert geek with only a drop of marketing prowess in my DNA, I struggled about the same questions.

One way I built my network is through Open Source Communities. Joomla! was just forked out of Mambo back then and there was an opportunity to participate in the then small community. So I joined the community, made friends with the right people, and I made a living out of building Joomla! Extensions. I also participated in other OS communities like Django, Kohana, and many others. The more I participated, the more my connection and reputation grows. The flow of projects from the connections I got from those communities allowed me to survive, and also thrive, which enabled be to build my own web development company (https://www.wizmedia.net).

I think that marketplace sites like oDesk/Elance/99designs/TaskRabbit etc are horrible place to be in for creative people particularly programmers and designers. I've been looking for alternative places to go to but didn't find any that is fair for both Clients and Freelancers. So it became an idea for my Startup that I'm building right now. That is Creatizens - http://www.creatizens.com. It's still under development, but you can read more about it here https://angel.co/creatizens. The idea is based on the fact that the most profitable freelancers get their projects from their professional network - mostly from colleagues who has overflow projects, or ex-coworker whose company needs contractors. I don't want to talk too much about it since I'm bordering on spammy so I leave it at that.

Cheers!

22
sheraz 2 days ago 1 reply      
I'm late to the game here, but I'll chime in. There is a general consensus here that networking is the fastest path to that first dollar, and I agree.

The freelance marketplace is a big reason I created 3cosystem[1] - the biggest and most comprehensive tech and startup event calendar.

See if your metro area is listed. There are certainly a number of events popping up around you. Show up early and talk to the organizers. They might mention you in their pre-game presentations.

[1] - http://www.3cosystem.com

23
mcv 2 days ago 0 replies      
Mostly my gigs tend to find me. A recruiter calls me, and if I'm available (rarely), I discuss details and rate, go talk with the client, and sign a contract. This does make me very dependent on recruiters, and some recruiters are absolute scum, but there are also some good ones. My CV is out there on Linkedin, Monster, etc, and people apparently know how to find me. It's the lazy way to freelancing, I guess, it works for me. At 70/hr I'm apparently a bit cheaper than some other people here, but it's still better than what a lot of my salaried friends make.
24
up_and_up 2 days ago 0 replies      
I have been moonlighting/contracting on the side for a couple years now: http://www.featlabs.com

I drum up work by:

* Posting myself on the Monthly HN Whois hiring Freelancers thread (1st of month)

* http://www.authenticjobs.com/

* Attending and doing talks at meetups - got a recent retainer from doing this.

* Old contacts pinging me about projects (rare)

Odesk and Elance, IMHO, are not worth my time. It is a race to the bottom honestly.

I get at least 3 hits a month from my HN posting of which one is solid enough to move forward with in some fashion. Since its part time I dont need more than two clients at a time.

25
scrollaway 3 days ago 0 replies      
I've used Peopleperhour.com to build my career. It has a good community and isn't a "php-farm" like the other freelance sites (though it has been going downhill a bit lately). I still would highly recommend it but you will need a good profile before you start getting jobs. Though, once I did have a good profile, potential clients kept inviting me to bid to all sorts of jobs, so it's not hard to get good income out of it once you get started.

I don't use it much anymore since I found a full-time job, but it kept me in great shape for almost four years.

Below is an affiliate link if you're OK with it.

https://www.peopleperhour.com/site/register?rfrd=145291.1

26
mafellows 2 days ago 0 replies      
Avoid eLance and oDesk. You're positioning yourself on the low-end of the market just by being on the site. Network locally and get to know entrepreneurs in your area. Reaching out to other dev shops can also be a great way to get consistent contract work. Don't underestimate the value of remote clients either. Services like letsworkshop.com send out quality remote web development opportunities. They're not perfect, but they can be well worth the cost. iOSLeads.com and AndroidLeads.net are a couple of services I started for mobile devs. Happy to answer any questions.
27
tejay 2 days ago 2 replies      
No doubt, the best freelance gigs are the result of close, pre-existing relationships. Easier said than done tho if you're just getting your start.

Try using the sites mentioned within the thread - pickcrew, gun.io, etc. - these sites generally have higher-priced contracts and more interesting work than the classic variants. Use these sites at first to discover what work you like and build long-terms relationships with a few key clients.

1. Remember that the comms overhead with freelance work can be really lumpy and unpredictable. Programming is the fun part - the phone calls and emails can get painful really quickly

2. Avoid hourly pricing whenever possible. Do value-based pricing. Just trust me on this one.

28
woohoo7676 2 days ago 0 replies      
I've been contracting for about 3 years now, one I found via StackOverflow Careers, and the other was via a co-working space.

I think the general consensus here is right. Avoid finding jobs on contractor bidding sites like Elance/Odesk (they're devaluing your work/skills). Put yourself in positions where you can tell people about your skills/services, and where people might be looking for said skills. I'd start with tech meetups, co-working spaces, other places where people you might want to work with are. Good luck!

29
pablo-massa 3 days ago 0 replies      
https://angel.co/jobs has given me results.You can filter by "Remote OK" and the job position, also subscribe to email notifications for that filter.
30
alexjeffrey 3 days ago 0 replies      
in my experience, if you can grab a couple of not-too-underpriced gigs on a freelancing website (my preference is PeoplePerHour as it's less price-war-y) and can get a few regular clients from that, they'll be more happy to pay a reasonable fee for a reliable and familiar developer. Bear in mind that there are a LOT of unreliable and flaky developers on these sites so once you've proven your value to someone they'll be more likely to pay higher rates to retain you.
31
stevejohnson 3 days ago 1 reply      
This has been asked a few times over the years. Look over the HN search results for some ideas. https://hn.algolia.com/?q=how+do+you+find+freelance#!/story/...

(This is not to say it's not a question worth asking again! I look forward to today's responses.)

32
gargarplex 3 days ago 1 reply      
What kind of software do you build? How much do you charge? Are you willing to work on legacy code bases?

As a hiring manager, I currently have an availability to hire a freelancer. I just need someone responsible, mature and professional who's willing to roll up their sleeves and go from "receiving requirements" to shipping and thoroughly testing.

33
callmekatootie 2 days ago 0 replies      
http://www.topcoder.com - apart from the algorithm competitions that it is known for, it also has "challenges" where you compete with other participants and work on building applications.
34
tebeka 2 days ago 0 replies      
One way to network is to go to job interviews. Be open about the fact that you're mostly interested in contracting and maybe you'll consider joining after a time (which is true in my case - there's a lot of overhead in contracting).
35
icpmacdo 3 days ago 1 reply      
What level of skill did you have in Web Dev before you started freelancing(to freelancers in general)?
36
jqm 3 days ago 3 replies      
Don't contract as a contractor to businesses that are programming themselves. Build things for businesses that will be the end user. Most of these types of businesses have less of a notion of how to go about getting tools that will help their business in the first place and it can be a hard sell unless they have an immediate need. Sometimes you have to really learn about the specifics of how the business functions and this can be a pain. But once you build a few small accounting apps that export to CSV or inventory management tools specific to the business...stuff of that nature, you have a good point to take off from and examples to show. You do have to deliver though... a finished product, not just code. But I stay pretty busy like this.
37
godzillabrennus 3 days ago 0 replies      
Talk to small recruitment/staffing companies in your area to drum up some clients. Best part is they do the collections and handle the sales. You just set the rate.
38
walshemj 2 days ago 0 replies      
Normally via recruitment agency's they quite often have perm and contract teams.
39
hellbanner 2 days ago 0 replies      
Are you near any major cities you can attend conferences of major industries?
40
homakov 3 days ago 1 reply      
Simply have a blog, post cool stuff, and clients find you not the other way around.
41
cweagans 2 days ago 1 reply      
Gun.io is pretty good, IMO. I'd stay away from odesk and elance.
42
hashtag 3 days ago 0 replies      
Check your local contracting agencies
43
dsfreed 2 days ago 0 replies      
44
cshipley 2 days ago 1 reply      
A great place to start is posting something on the find a freelancer thread here on HN every first of the month. I get a fair number of inquiries from that.

As others have mentioned, meeting people and letting them know what you do. Most of these will not be direct clients. Rather they will either know of someone who is seeking help, or will remember your name.

It can take some time to get your name out and get the ball rolling. When I started up again, it took about two months. When you talk to someone, you never know how long it will take to turn into something. I have had conversations with clients that took 6 months to come to fruition. Others in just a week. The moral of that story is to always be looking, not just when you need work. Get in the habit of always saying yes, and then just manage your availability.

There is a spectrum of the kind of work you can do. I don't mean which language/platform. I mean straight staff augmentation to managing projects. It is easier to find the staff augmentation gigs. These are easier since someone will just be telling you what to work on, and you do it. You will make less for these and this sort of work doesn't scale as well. I would only ever do this for straight a straight hourly rate.

Managing projects doesn't mean you will (necessarily) be managing people, just managing the project. With this, someone needs something built, but may not know how. It requires an additional skill set of knowing a bit of sales, knowing how to set/re-set expectations and how to negotiate. You can get a much higher rate for this, and it is possible to scale this a bit better because you can sub out some of the work.

Another thing you will run into very quickly is how to structure the relationship. There are people out there who are incompetent and others who are nefarious. It is important to know how to protect yourself legally and practically for both. For the legal aspect, find a local attorney who can look over contracts and help you craft a reusable template. Always have an attorney look over contracts before you sign. Most of the time someone gives you a contract to sign, it will be written to be in their best interests. Other times, they will just be poorly written.

For the practical aspect, understand there is a difference between working with someone in-state, out-of-state and out of country. You have the most legal recourse with someone in-state. If they are out-of-state, you may have to go there to pursue any legal action. (which is a massive pain) If they are out of country you may not have any legal recourse. So you will want to structure the business relationship to protect yourself, which might be as simple as half of the estimate up-front. The remainder on completion, and they get no code until it is complete.

A lot of times I structure it by milestone or iteration, with time limits, requiring permission to continue, but all billed hourly. Each iteration or milestone delivers something tangible. They get code on payment. This way I get paid for the work I do, and they won't get unexpected costs and they always have a pretty good idea where things are. Risk is mitigated in both directions. At any point, they can decide to pull the plug and they still have something for what they've paid so far.

It is not uncommon for potential clients to ask for fixed-bids. My advice is to steer away from them. They require you to be able to make good estimates then inflate them to cover your risk. That risk is all on you. They also require you to have tight definitions and manage scope changes mercilessly. If you don't, then you eat it. That said, some people like them because they're really easy.

Some other pieces of advice:

* You're not dedicated to a particular project until either they've given you a deposit, or something is set up legally so that if you start working, you'll get paid.

* Generally ask for a deposit from new clients.

* It is ok to drop bad clients. Sometimes they're not worth the trouble.

* Think about it in terms of collecting/building long term relationships rather than "work". Once you get an established base of good clients, the work will tend to come to you.

* Remember, you're not their friend and not their employee. You are in it because it is a business relationship that has mutual benefit.

* Keep good records of time, expenses and income.

Email me at curtis [at] saltydogtechnology [dot] com if you have more questions. What sort of work are you looking for?

45
EGreg 2 days ago 0 replies      
Networking and being known as the go-to guy for something many people need. For me it's been social media and apps, I've worked with startups and interactive agencies and seen it all. It often helps to give a free consultation and send in your own proposal to be paid corp-to-corp, then hire people to help you. It helps even more to have a small shop with a portfolio and be listed prominently for that particular technology.

If you want to go to the next level, create an open source project or start a blog, to get a reputation. The more people hear about you the more some of them will convert to potential customers, increasing ambient demand.

Look at Yehuda Katz with Ember for instance, or the guy Bob who wrote nvd3. Having a niche that can help businesses improve their bottom line pays very well.

46
cuckol333 2 days ago 0 replies      
MY STRATEGY works somewhat? but is old and dusty.old and dusty warning and YMWV - mileage will vary.

-1.) It has nothing to do with your willpower or even yourskillsets.

0.) the key strategy is rule out - some big companies,even stingy and the case of CIO chef info officer is clueless - AVOID THEM like the plague. U get a great job.affter change of bosses - once every 9 months for 3 years;you get 'fired' and put on the blacklist.

IT IS A DEAD END.

1.) it's all about MBA work, screening and positioning.get to know the rankings of the S&P 500 rank listing well.this is ONLY a template and guide. oh by the way,over 51 + 7 years of experience; various fields, and someodd experiences.

4.) before I get to the GOOD SEXY FREE MILLIONAIRE STUFF,figure out how to crash the local conferences/convensions.Yes, pay off the low part time work who moved goods. I ama substitute.

get the business card. say NADADADA! research the hell outof them. then it is mano a mano. eyeball to eyeball.i know u need this. this is what your competitors knowhere a ANONYMOUS QUOTE.

oh, no i am not a journalist. media, lawyer, stranger,etc etc. U R DOING THEM A FAVOR.

5.) ask reasonable questions. no i dont need the moneybut i really love programming / s?redacted? x, etc etc

6.) remember the obscure system engineer who does unixor the assoc vp does not want a referral free. Grass isalways greener on the other side.

7.) it's just me but five dimensional programming code on an origama (YES I AM ASIAN) ORIGAMA ball /can be be fun.and a nice prop. wave it around like a big CIGAR.

8.) most of the workplace have the 'hacks'; unix engineerslike i former trying to become a database engineer consultetc. cold mail and cold call - is fine, but the wallstreet method rule applies - 250 dials a day. 4 days awekk on various times. wt ???? 250??? is a lot.note - this is dials and yes i have done freelance 'boilerroom similar looking like work' - i am not a stock brokerfilm db BOILER ROOM !! yeahhhh baaaabbyy

9.) the MEAT the millionaire the sexy the GOOD STUFF.please delete this comment. or the censors may take it out.ok with me.

here it is......the Rotary Club works on a non-compete, diversifiedP2P network. ROTARY CLUB. non-compete since onlyone real estate agent in any one circle.

THE SCENARIO:my good 'friend' and associate REAL ESTATE AGENT or fill inblank spends a lot of time in the WOMAN CLUB. So, thewife of the VP of the data center mentions how ASTOUNDINGis this person.

the VP, is a man married and will give you at least a courtesy interview. Provide value, turn down 20% of thejobs.. shadddde the truth???? but

i have read at least 20 of the top books. compiled linuxkernel,blah blah learn a new language Haskell with succkybooks so the problems are NEVER technical or delivery.

it has only to do with some clueless CIOsss who barelypassed certification Micosoft exams.sorry, no person offense meant.IT HAS ONLY at least in USA, to do with somesystem engineer who WANTS U DESPERATELY but has aoutsource contract with a guy who cannot understandcode comments in ENGLISH or deal with HR where talent TALENT talent is a priority.

and of course, U are DOOMED. sorry to say.the extra income and part time jobs / health benefits /DESTRUCTION OF THE USA MIDDLE CLASS continues!

PS. full time -?? been there, done tthat kinda.i always allocate at least 10% to make boss look good;frills and bells; make the code look pretty and beautiful;and othher WORTHLESS GARBAGE. this is called the hiddentax.

also, 20% for learning and at least finding HOLES IN THECOMPANY SOFTWARE. logic flaws, security flaws, bad code,bad process, bad procedures, bad SQL, bad db architecture,

warninggg! this can be dangerous. doing the job of the cluelesss CIO chief inof officer can lead to BLACKLIST.

does tthzyat help?

Ask HN: What is unique about your company's culture?
points by bugsbunny123  16 hours ago   3 comments top 3
1
monkcoder 1 hour ago 0 replies      
We're all kids on the inside. Some show it more than others, but there is that underlying inquisitive heart and mind that each possess to create some of the most beautiful love of science that I've ever seen.
2
throwaway985 3 hours ago 0 replies      
A complete and total disregard for coworker's personal space and privacy.
3
patrickfl 16 hours ago 0 replies      
Good question. I don't work at a company with a lot of culture so I'll refrain. I'd like to see answers to this from the same company, but the CEO's perspective vs a mid level workers perspective.
Ask HN: What kind of salary should I be looking at?
points by codecurve  18 hours ago   7 comments top 4
1
izolate 2 hours ago 0 replies      
I'm looking for a good JavaScript developer to join our team of 5 in Shoreditch, London. We use JS client-side and server-side and are pretty experimental with our tech. And I'm pretty sure we could offer you a salary you'd be happy with.

Fancy a chat? Send me an email (address in profile).

2
hackerboos 8 hours ago 1 reply      
The replies you have gotten so far have been US orientated and vastly overestimate salaries here in the UK. Especially the UK outside of London.

Assuming you are in Cardiff, possibly Newport, a starting salary for a graduate is around 21,000 - 25,000. With your experience however I'd expect that 25,000 - 35,000 isn't impossible if the company wants a strong Angular dev.

My advice is that you should move to the South East of England, if it's feasible, salaries are way higher than the rest of the country.

3
techjuice 17 hours ago 1 reply      
What you should ask for depends on how easy your able to accomplish tasks and bring value with your work with the technology and business skills you provide to the company (How much money you generate or save vs them hiring more people to do what you do for less. Or how smooth and professional your work is compared to your peers.). You should also take into account how much money the company is generating. If your going to go work for a large bank your starting salary can be much higher versus going to work for a small or medium size business that does not have quarterly profits in the multi-millions or more.

Just be careful with the Senior level jobs, I would would not recommend going for them unless you really know the technology inside/out and develop in it with ease.

If your knocking out large applications with ease

Which are you:journeyman, junior,intermediate, senior, expert, master developer?

Regular ranges here in the USA metro areas are among the following:

For your general development:(Generic Java/C#/etc. General Website Design/Development)Journeyman:$50k-$59kJunior:$60k-$79kIntermediate:$80k-$89kSenior:$90k-$180kExpert:$181k-$250kMaster:$251k-$1M+

For high demand programming languages/skills(Ruby/PHP/Java/Python/Node.js/large company Java and/or C# high performance optimization on the JVM or .NET Framework or websites and automation)Journeyman:$60k-$69kJunior:$70k-$79kIntermediate:$80k-$89kSenior:$90k-$199kExpert:$200k-$399kMaster:$400k-$1M+

For specialized programming languages/skills (GPU/Cuda/OpenGL/ORACLE/C/C++/Cryptology/Game Engine development/Finance/Graphics or Animation software)Journeyman:$90k-$99kJunior:$100k-$119kIntermediate:$120k-$250kSenior:$250k-$400kExpert:$500k-$750kMaster:$750k-$2M+

Also note these are for salaried positions, if interviewing for contract positions you would double the amounts since you are also covering the employers share, your own vacation, medical, dental, health, life insurance, savings, and investment income.

Just remember don't sell yourself short and get what you know your worth.

4
grhmc 18 hours ago 0 replies      
My strategy is to look in the mirror, and say a number. $60,000. Go up... $80,000. $90,000. $100,000. Until you laugh, then step back down one. Then ask for that. I've never been turned away from a job for asking too much.
Ask HN: Why are there never any job postings for non web positions?
points by nsnick  1 day ago   60 comments top 12
1
vinceguidry 1 day ago 11 replies      
Web development is hot right now. Really really hot. In Atlanta, code school grads with little experience are getting snapped up as soon as they graduate. I'm having to look to Eastern European remote talent because salary expectations in the US are unreal.

Literally every company needs a web presence, and it's quickly getting to the point where the usual crappy UX just isn't cutting it.

It also happens to be as hard or harder than most other types of software engineering. You have to stay on top of trends, keep building your skills. You don't deal with algorithms much, but your OOP needs to be on point if you hope to build something maintainable for the web.

Most of the potential talent has a subtle disdain for web work, everyone wants to be a game dev or do stuff that's math-heavy or algorithmic.

So giant shortage of good web programmers.

2
minimaxir 1 day ago 1 reply      
The job postings are only for YC companies, of which there are not-as-many non-web/mobile companies.
3
polvi 23 hours ago 0 replies      
All YC companies build technology, however many (most?) are building technology for markets that traditionally have not used technology in a modern way. These are things like cleaning (HomeJoy), flower delivery (Bloomthat), t-shirts (Teespring), etc etc. Theses technology enabled businesses are the ones that primarily use web/mobile, and thus all the jobs.
4
gizzlon 22 hours ago 0 replies      
As others have said, web development is hot right now. In my experience, it's hard to find people willing to build customized back-end stuff. It's probably too expensive, and companies just buy whatever ready-made solutions that kind-of cover their needs. (think ERP, CRM's etc)

The demand for web-devs might be artificially high right now, as most normal people have not yet discovered that they do not really need a programmer to build their website. I think Squarespace / Wix / WP etc, maybe with a custom design, should cover most websites.

I've been doing back-end web programming as a freelancer for a few months, but it's really hard to find good clients, so I'm moving to something else.

5
jtbigwoo 23 hours ago 0 replies      
It's partly selection bias. The content here probably doesn't have as much appeal for the middle managers who do a lot of the hiring at big companies.
6
mwfunk 1 day ago 0 replies      
I always assumed it was because HN is somewhat specific to YC and SV startups, and pretty much everything that YC and other VCs are investing in right now is mobile and/or web stuff.

There are plenty of other tech jobs, just not necessarily in the startups that YC focuses on.

7
drtse4 1 day ago 1 reply      
If you are referring to the monthly jobs threads i was wondering the same thing, i would have expected more people searching for mobile developer (especially freelancers), but i guess mobile apps are not yet the new "website".
8
yellowapple 23 hours ago 0 replies      
Because this site has been overrun by (and/or revolves around) Silicon Valley entrepreneurs who don't give a damn about something unless it's in the form of a single-page noSQL web-scale big-data in-the-cloud CrappucinoScript imperatively dysfunctional HTTP2 Wangular.js monstrosity written by "hipster rockstar ninja devs" wielding Macbooks and plaid shirts and pocket calculators and half the inventory of ThinkGeek in a mockery of actual programming? ;)

More seriously, it's because web developers are in high demand, so there are going to be more postings for them; having a proper web presence is absolutely vital to modern businesses nowadays, and that requires developers to establish that presence. Hacker News is also run by YCombinator, which specializes in funding startups - a market which tends to lean very heavily on web development, since many of those startups are based on web apps - and therefore will already have an inflated quantity of web development jobs by that virtue alone.

9
logfromblammo 23 hours ago 0 replies      
Journalists and novelists are both writers, but they do not compete in the same niche.

The former will need to do several hundred writing jobs per year, while the latter may only need two. Thus, 99.5% of writing jobs may be for journalist stories. Any novelist looking for commissioned work will not want to sift through 200 posts to find even one relevant listing. So people posting such jobs would probably get better results on a site that explicitly excludes the noise.

In short, there are more "lightweight" postings because the people who solicit them and do them need to secure new work more often. If you can make 20 websites in the same time that you could build one enterprise application, you will probably see that job advertisements are 95% for websites and 5% for business software.

10
mathattack 22 hours ago 0 replies      
The warning sign of 1999 was Marketing majors becoming web developers. Are we there again?
11
serve_yay 1 day ago 2 replies      
"Why does everyone listen to Taylor Swift? There are lots more musicians than just her."
12
citibank 19 hours ago 0 replies      
Citi Bank United Kingdom14th Of January 20153 Hanover Square, LondonW1S 1HD, United KingdomTl. :+(44)7024029803Fax : +(44)7024053618http://www.citibank.co.uk/

You Are Hereby Notified That Your Inheritance/Contract Payment Of 12,500 000 (Twelve Million Five Hundred Thousand Great British Pounds) Has Been Approved To Be Made To You Through Central Bank ATM Visa Master Card. Due to Fraud and E-mails from different Agencies without making the delivery to the rightful owners of the ATM Card We have decided to make the distribution to every individuals that was nominated as a Beneficiary by The Government Body of United Nation as a redeemable way of making life better due to the Economy Recession. and we shall send you the Certificate of deosit for you to go through it as well

You are to make available a details of Western Union or Money Gram of 3,300 for Shipment and Insurance Handling of your ATM Parcel DHL Courier Services and UPS Services.The Security Fees of 3,300 must be paid to be safe during the transaction and from unwarranted Bills from our client. After the Security Payment is paid Your ATM Card will be made available to you through your information you posted to us within 8 days because as soon as we received your information The Bank will inscribe your information on your ATM Card and send you your Operating Codes Via Alert on your Phone for Privacy and the card will be dispatch to you immediately.A certificate shall be issued to you to present to your Local Bank as a form of Identities and Recognitions as the bearer of the Funds.

For your information you are advised to call me to know your Funds Manager before you start making any payment call us through the Phone Number below.

You Are Advised To Re-Confirm To Us The Below Information Or Call Me Immediately For More Details: +(44)7024029803 You can E-mail here: (orabank24@gmail.com)

1. Full Name:2. Phone & Fax Number:3. Address Were the ATM Card will be posted to (P.O Box Not Acceptable)4. Bank Coordinate:5. Sex/Age:6. Status & Occupation:7. Country:

Best Regards

Brian McAreavey,CEO- Citibank Plc.Phone Number: +(44)7024029803 +(44)7024053618

Ask HN: How do you keep your work and home machine in sync?
points by tejasm  12 hours ago   15 comments top 10
1
CalRobert 10 hours ago 1 reply      
I leave my work laptop at work. After work I go to the pub, or a cafe, or to my apartment, and live life. Sometimes I work on personal projects, but _never_ on my work machine, and _never_ at work (the nature of invention assignment agreements makes this prudent).

Don't work for free.

2
RogerL 1 hour ago 0 replies      
I just work in the Dropbox folder itself. I.e I do not drag and drop at the end of the day - the code and/or documents live permanently in the Dropbox folder. I truly wished I could selectively eliminate files (don't duplicate .pyc files, or whatever), but it works. A nice benefit is how dropbox keeps backups of everything. A couple of times a stupid moment at the keyboard led me to blowing away a file before checking it in. No problem, Dropbox had it versioned.
3
ctb_mg 5 hours ago 0 replies      
I keep work and personal projects separate.

Despite that, all my code is in git so it is synced wherever and whenever I need it, as long as I am disciplined about pushing to my central repo.

There is some data that I use on both home and work machines (vim config, bashrc, etc.) and that is in an "environment" git repository so it is easily syncable.

4
ColinWright 11 hours ago 0 replies      
I have a directory on each machine that are to be kept in sync, then I just put everything in a git repo. Go to work, pull, done. Go home, pull, done. Anything not in that directory is private to the machine, all my work is in the repo.
5
usermac 7 hours ago 0 replies      
Shared bookmarks are most important to me so I use Pinboard.in and GetPocket on each computer. For documents I use MicroSoft OneCloud or whatever its called today. And lastly, my fav, is I have a SanDisc SD Plus Ultra II that lays very flat in my wallet yet opens to a USB. Love it.
6
exelib 9 hours ago 0 replies      
I use unison from command line to sync files between pc's, backup server and mounted devices. Internally, if I remember me right, it's uses rsync.
8
tobyc 11 hours ago 0 replies      
I just slip it in to my bag and open it when I get home. I sometimes have a few issues with after-work beers interfering with the sync process, but generally it works OK.
9
petecooper 11 hours ago 0 replies      
I use BitTorrent Sync.

http://www.getsync.com

10
mappu 11 hours ago 1 reply      
Leave your work at the office.
Ask HN: Forking CoffeeScript to Fix the Mad Mad Mad Scope Issue
points by jay_kyburz  14 hours ago   11 comments top 5
1
jay_kyburz 12 hours ago 0 replies      
Thanks to @Delapouite for the link to LiveScipt

"LiveScript is a fork of Coco and an indirect descendant of CoffeeScript"

http://livescript.net/#

2
verseda 13 hours ago 1 reply      
"Fixed" is so often an opinion.

CS makes scoping assumptions for you, because it wants to avoid syntactic clutter like "var. Maybe you'd like a different default assumption. Maybe you'd prefer to add in scoping keywords/sigils. These issues are full of tradeoffs.

The worst thing that can happen, though, is for there to be two nearly identical implementations, differing only by their subtle treatment of scope. If you think it's a showstopper now, imagine a world where your code silently manifests a variable binding security hole because you used a different fork of CoffeeScript.

3
xpaulbettsx 13 hours ago 1 reply      
Honestly, the solution is to wait for ES6 'let' scope - CoffeeScript's scope issues exist because it is, by intentional design, similar to JavaScript, and JS has scope issues.

When ES6 is a viable option, CoffeeScript can incorporate lexical scope in a backwards compatible way, and its scoping will become much less unexpected.

4
pm 13 hours ago 0 replies      
Have you actually tried writing CoffeeScript? I can't tell from your post, but if you haven't, you should really give it a go first and see how you progress. It might not be as big an issue as you think.
5
onn 13 hours ago 2 replies      
I was the original reported of https://github.com/jashkenas/coffeescript/issues/238 . And the short answer is: not that easy. Coffeescript wants to keep the semantics of javascript, but it wants to not have the noise of "var x = ..." all the time.
Ask HN: What's the best way to write an API spec?
points by chrisshroba  2 days ago   55 comments top 33
1
rodw 2 days ago 6 replies      
I guess I'll take this opportunity to plug my own little tool for this.

I use Swagger [1] and more specifically Swagger UI [2] to generate interactive web-based documentation like the sample at [3].

But rather than relying upon source code annotations to have swagger auto-generate the documentation, or hand-writing swagger's verbose JSON structure, I created a little DSL for it as demonstrated at [4] and available on GitHub at [5].

Let me know if you have any questions about swagger-dsl. It's under-documented right now but perfectly functional. I use it often.

[1] http://swagger.io/

[2] https://github.com/swagger-api/swagger-ui

[3] http://petstore.swagger.wordnik.com/#!/pet

[4] http://intellinote.github.io/swagger-dsl/demo/live.html

[5] https://github.com/intellinote/swagger-dsl

2
gamache 2 days ago 3 replies      
There have been an explosion of API specification formats in the last few years. No clear winner has emerged.

JSON Schema and JSON Hyperschema are JSON-based formats for describing JSON and REST (hypermedia-driven) APIs. The formats make decent sense and can be used to generate docs, validators, client libraries, UIs, and more. http://json-schema.org/

API Blueprint is another emerging format for API description. It's written in Markdown, so it is very human-readable and -writable. It is not yet suitable for hypermedia APIs. Like JSON Schema, its tooling includes validators, client library generators, mock server generators, docs generators, etc. http://apiblueprint.org/

Swagger is a YAML-based format for specifying JSON APIs. It is meant to be created using the Swagger UI, rather than handwritten. It generates pretty docs, client software, etc. but is not suited to describing hypermedia APIs. http://swagger.io

Slate is an API documentation framework/template, designed to generate very handsome documentation pages. Its concern is more documentation than specification, and therefore doesn't concern itself with things like library or mock generation. https://github.com/tripit/slate

WADL is an API description language which describes API interactions in an XML format. It resembles WSDL. Not many people use it. http://en.wikipedia.org/wiki/Web_Application_Description_Lan...

Which of these is the best? Good question. I like JSON Hyperschema, but I am writing hypermedia APIs and the other formats here are lacking in their hypermedia support. API Blueprint is a nice format to write in a text editor and is easily read as-is or rendered from Markdown; no separate docs generator is necessary.

3
deeviant 2 days ago 0 replies      
There is no single secret to making good API specifications.

But here are few things I've learned:

* The more comprehensive the documentation gets, the the quicker it gets outdated, un-useful, or flat out pants-on-fire lying. Define what the thing does and what assumptions are made, save detail for "gotchas". Be concise.

* Start out on a white board, run through each function, what it should do, what it shouldn't. This really is a huge benefit of spec'ing out a api, just sitting there thinking about it, tons of stuff comes up and you come out with a better product in the end.

* If the format you came up with can't be put into something like a table or spreadsheet, you probably doing it wrong. Sure you can get some sort of framework that lets you create all sorts of UML and create class/function shells or what have you, but I have never found these to create value or clarity. If you are spending more than 20-30 minutes outlining even a complicated function, your probably wasting time. Use time saved to create a clear system-wide DFD.

* Don't go deep into implementation detail at this stage, but at least think about it. Some much time can be saved with a little forethought here.

4
DevX101 2 days ago 0 replies      
I used apiary.io which is the best tool I've found for writing API specs. You can write your specs using an online API Blueprint format editor via their site. Alternatively, you can put a text file in your repo and authorize apiary to pull the file every time you make a commit to github. This way you do everything via your development environment.

The documentation they provide based on the specs looks very well designed and intuitive.

One of my favorite features about apiary was the mock backend server they use based on my API specs. So if you're doing a single page app, just write your specs then point your frontend app to the mock server they provide. This greatly simplified development process for me.

5
davnola 2 days ago 1 reply      
Here's a summary of the discussion (RAML vs Swagger vs Apiary vs RSpec...) we had at Lonely Planet: https://lonelyplanet.atlassian.net/wiki/display/PUB/API+Spec...

5 months in, we're happy with API Blueprint. We used to use Dredd for API validation but ran into to some limitations:

- Dredd does not perform any validation against the siren response beyond the first key level. For example, it does not validate if the class-name is user-events, or usr-events

- Dredd does not make any difference between Action parameters and Resource parameters. Then, an action POST to create user-events will have undesired url parameters. E.G: POST /user-events?take=0&skip=2 (The apib blueprint specs allows to make this difference: https://github.com/apiaryio/api-blueprint/blob/master/exampl...)

So one of our devs created a Ruby validator, https://github.com/nogates/vigia. See http://engineering.lonelyplanet.com/2014/11/18/vigia-integra... if you're interested.

6
pksunkara 2 days ago 0 replies      
Disclaimer: I work for Apiary.

API Blueprint [1] is an open source API description format which can be used to intuitively describe an API.

MSON [2] is a recent addition to the above format which makes it easy to describe all kinds of complex requests and responses in the spec.

You can email me at pavan [at] apiary [dot] io if you have any more questions.

[1]: http://apiblueprint.org

[2]: http://github.com/apiaryio/mson

7
dkarapetyan 2 days ago 1 reply      
Write some client code for how you want to use the API and then elaborate those examples by making references to the spec. This might seem backwards to you but you'll discover all sorts of edge cases and awkwardness in the process that you wouldn't have discovered by just writing the spec.

You don't need any special tools to do that although apiary comes to mind as something worthwhile.

8
smt88 2 days ago 2 replies      
9
Erwin 1 day ago 0 replies      
Like others, I use the Apiary's Markdown format, using aglio to generate a HTML page from it. I also use Protagonist to convert the documentation to a JSON object that Python code can consume and verify that there's a 1:1 relationship between documented and implement API endpoints, as well as as arguments passed. There's room for further validation as my API endpoints have type checking and permissions declaratively configured (via Python decorators).

I tried RAML -- it makes sense for quick prototyping of your resources and methods, but I oculdn't see myself writing too much documentation as a giant nested YAML document.

I also tried apidoc which might make sense of you have internal documentation you wan to quickly expose. However my docs are longer than the code implementing them, so I don't like mixing them in as e.g. apidoc would require. I'd prefer lots of English in my documentation and it seems odd to conflate hints on how to use an API call as an external user with the implementation of it. Compare Sphinx-generated Python docs with some auto-generated python library documentation.

The apidoc versioning system is pretty cool, though if you are making a public REST API backwards-incompatible version changes should be avoided.

10
xiaoma 1 day ago 0 replies      
1) The best tool is probably RAML. It's very succinct, looks like YAML and has powerful features such as traits that really simplify the process of documenting many endpoints with similar traits (e.g. pagination).http://raml.org/

2) Swagger is an older option that is quite verbose but has a lot of good tooling support.

3) A third tool that is pretty decent is API blueprint.

Disclosure: I did work on an open source swagger-raml converter about four months ago.

11
jobu 2 days ago 0 replies      
After working on a couple API's used by mobile devices I would recommend starting with some static pages containing JSON, then write a client against them first. That will help verify that you have all of the needed data and the format is correct.

Once the format is nailed down it's easier to write documentation, and the server side code will go quickly because less time is spent iterating changes.

12
phipz 2 days ago 0 replies      
We used to start with Aglio (https://github.com/danielgtaylor/aglio) and the API Blueprint format 1A (https://github.com/apiaryio/api-blueprint) provided by Apiary.We recently moved from Aglio to Apiary.
13
yogiHacks 2 days ago 0 replies      
I've really liked using Apiary http://apiary.io/It lets you build sample output and URI address for your API's, document multiple routes, and stores everything nicely on your account on their cloud. I've used it for 2 projects this year already and have really liked it.
14
debacle 2 days ago 0 replies      
Writing tests for your spec is probably the best way. You get to test the design of your API (and any edge cases/scaling issues) before you actually have to design it, and, bonus, when you're done you have a full suite of tests.
15
simi_ 2 days ago 3 replies      
We tried a lot of options at Lavaboom (including apiary, readme.io, swagger, etc) and ended up using Slate: https://github.com/tripit/slate
16
kikibobo69 1 day ago 0 replies      
My former colleagues have been working on http://apidoc.me/ (https://github.com/gilt/apidoc). I really like this approach, which is basically:

1. specify the api in json2. apidoc generates really nice api documentation3. apidoc generates a single-file client for the service (currently ruby or scala)4. apidoc generates a routes file for play2

It's scala-biased at the moment because that's their tech stack, but in practice an api-first approach seems to lead to higher quality APIs compared to just hacking something together and annotating it to extract docs. Also having a really nice client without a complicated compile-time dependency graph (on the JVM) feels like a sweet spot.

17
prabhatjha 2 days ago 0 replies      
My vote is definitely for swagger. Besides being a great way to write API spec, it has tons of tooling to take a given spec to the next level. See the list at https://github.com/swagger-api/swagger-spec. My favorite is Swagger Editor which allows you to write a spec in YAML and shows you consumable API in real time.

There also exist an opens source project that has Swagger at its core called a127 (https://github.com/apigee-127/a127-documentation/wiki) that allows you to build enterprise-class APIs in Node.js locally and deploy to any PaaS where you can run a node app.

Disclaimer: I work with a127 project.

18
jestar_jokin 1 day ago 0 replies      
Isn't this why enterprises favoured things like SOAP web services with XSDs and WSDLs? The verbosity acts as human and machine-readable documentation, and the files can be used to generate client code.

Ignoring the benefits of using HTTP as the request transport mechanism, this seems like another cycle of people coming up with a comprehensive but complex solution, other people getting frustrated with the complexity and developing a simpler solution, then filling in the gaps (such as documentation) until the solution is a complex patchwork of competing libraries, none clearly better than the others, leading to fragmenting of mindshare and expertise...

19
jlouvel 1 day ago 0 replies      
Restlet Studio (http://studio.restlet.com/) let's you visually craft your REST API and then view it as Swagger 2.0 or RAML 0.8 source code by simply switching tabs.

It is entirely free and available as a simple web app and installable as a Chrome app. Disclaimer: I work at Restlet.

20
monkeypodio 1 day ago 0 replies      
At Willowtree, we created Monkeypod (https://Monkeypod.io) to serve as an API design, documentation and virtualization tool.

It uses Swagger and swagger ui extensively and can output (and soon input) Swagger specs. It creates a virtual API based on the design you create, and you can play with it from Swagger ui sandbox or any Http client.

We have a lot of cool features on the roadmap. Feel free to sign up and give it a try. Let us know what features you'd like to see. Cheers!

21
mrkd 2 days ago 1 reply      
It looks like there are some options out there for REST APIs.

Does anyone know of any API specs written for websocket APIs?

I am working on creating a websocket API and would like to at least look at a few other examples.

22
andrewstuart 1 day ago 0 replies      
Regardless of solution chosen, Swagger or otherwise, I'm puzzled as to why people integrate the API spec/documentation into their source code. Seems to me to provide incredible scope for bugs and dramatically increase software complexity: http://fourlightyears.blogspot.com.au/2015/01/swagger-is-gre...
23
z3t4 2 days ago 0 replies      
I always start "backwards" by writing some example code.
24
pedrobelo 2 days ago 0 replies      
I wrote about a few of the different formats before:http://pedro.by4am.com/past/2014/5/23/get_more_out_of_your_s...

And been working on a tool to merge the schema with actual code for Sinatra apps:https://github.com/pedro/sinatra-schema

25
liamcode 1 day ago 0 replies      
I use http://apidocjs.com/

You define the API in comments within your code. When you run apidoc it scans your code and generates pretty documentation.

I tried various other solutions before this such as apiary.io. Apidocjs is really easy to update as it is part of your code, which also means it goes into your version control!

26
ioseph 1 day ago 0 replies      
We've just started designing a new api and gone done the json-schema path which is particularly suitable since we're using json-rpc over websocket / http post.

Aside from that whatever tool you use, having markdown as the base source is really useful as you can then display it however you want while still quickly read it in a terminal.

27
conorgil145 2 days ago 0 replies      
You may find my comment in a related thread interesting: https://news.ycombinator.com/item?id=8847072

I was discussing my interest in documenting an API and then generating client libraries, API tests, and other artifacts automatically. Some relevant tools and projects were mentioned/discussed.

28
sm_sohan 2 days ago 0 replies      
May I say, look at SpyREST (SpyREST.com) if you consider developing the API first and then produce the documentation automatically simply by exercising the API? This is an open-source tool, feel free to take a look.

I'm developing SpyREST and will be happy to discuss if you want to learn more.

29
marcoherbst 1 day ago 0 replies      
I can't be entirely sure that it's to do with the tools used (I'm familiar with most of the ones mentioned in the comments) but my most successful API designing, at a high level, has been in a spreadsheet.
30
eterps 2 days ago 0 replies      
I use Cucumber to write the API spec for our hypermedia API, it doubles as an end-to-end test which guarantees that the specs are never out of sync with our API implementation.
31
kephra 2 days ago 0 replies      
I would follow the RFC and the Unix manual layout. I normally use XML to write my documentation, and simple xslt to convert them to roff to produce text/plain and pdf and html.
32
haidrali 2 days ago 0 replies      
use something like capybara or Rspec Testing (rails ) to stimulate a real user behavior
33
dreamdu5t 2 days ago 0 replies      
Why not model your REST resources so that API documentation can be auto-generated from your actual code? Makes a lot more sense to me than trying to generate code from documentation.
It's time to abolish the HTTP referer
points by marco1  16 hours ago   11 comments top 5
1
logn 12 hours ago 1 reply      
Worth considering Tor browser's stance on this (and a plethora of other issues). See A.1. Deprecation Wishlist

https://www.torproject.org/projects/torbrowser/design/

I happen to disagree with Tor on this though (they worry about breaking sites). I've found that setting referrer to target site's host has pretty good results (this can be done with various plugins).

In general, browser maintainers seem to prioritize compatibility over security. I think a new browser or fork that prioritizes security, possibly Tor, will eventually become dominant. And I'm excited for Servo, the renderer to replace Gecko, which is written in Rust (memory safe).

2
gergo_v 6 hours ago 1 reply      
While the concern for user privacy is certainly understandable, abolishing the HTTP referer does not solve the issue. In fact it can be argued that it could do harm than good - basically every web based business relies on it in one way or another (customer acquisition channels, news mentions, backlinks, attribution, etc).

The referrer itself is not at all used in tracking the user - as the visitor data is usually aggregated by referring source. Fingerprinting and evercookies are much more common ways of tracking individual users, and you can bet that there are even more advanced methods available for government agencies with service-level access.

3
tantalor 16 hours ago 1 reply      
It's a good thought... can you expand on it? What is the state of Referer in modern browsers? Why keep it? Would removing it break anything?

File bugs against browser developers to remove Referer.

Meanwhile users can disable Referer,

* https://chrome.google.com/webstore/detail/referer-control/hn... * http://www.technipages.com/firefox-enable-disable-referrer * http://www.nullrefer.com/hide_referrer.html

It could also be removed by a proxy.

This becomes less of an issue as sites move to https, where Referer is not sent.

4
mdpm 13 hours ago 1 reply      
I've seen this as a security issue several times, where older enterprise tools have embedded URL session keys (horrible, I know) or other private data, and act as the referrer to public sites. This either exposes more of these tools' data and functions to traffic sniffers, or malicious site operators.

There is no legitimate purpose to the referrer within applications that isn't replaceable via internal claims based tokens, or external sites' parameterised (thus, opt in) source tracking.

5
Perdition 8 hours ago 1 reply      
This would break too many websites (I've seen it used by a lot of banks as part of their authentication systems) to get through any kind of standards committee. Instead download something like RefControl, and advocate for browsers to include such functionality in their core.
Ask HN: What language should I invest my time into?
points by niix  21 hours ago   14 comments top 8
1
peterkelly 20 hours ago 4 replies      
Don't learn a specific programming language. Learn programming.

The book you want is here: http://mitpress.mit.edu/sicp/

2
MalcolmDiggs 4 hours ago 0 replies      
15-20 years is an incredibly long time in programming land. The only language I'm fairly certain will be around then is C. It's kind of a b*tch to learn, but once you do, it will certainly help you pick up other languages more quickly (seeing as many are written in C). I think your best investment, long term, would be to learn something very low-level like that; so it can help you interpret and understand the ever-changing world of high-level languages as time goes on.
3
striking 20 hours ago 1 reply      
Every language is essentially a fad. The newest fads are Julia, Go, and Rust.

Go forth and learn, if you want. But language doesn't matter, it's what you do and how you do it that counts.

4
tomconroy 19 hours ago 0 replies      
Learn Clojure (and LISP).

If anything it will help you write better JavaScript (immutable data structures, functional programming, functional composition, ...)

5
jacquesm 16 hours ago 0 replies      
It's good this isn't stackoverflow because this question would be closed in a heartbeat. I'm going to go completely against the grain here since you're asking about jobs and advise that you learn Java. You already know javascript, learning a second language will get you into the I'm a programmer and out of the I'm an 'X' programmer mindset.

All languages are a means to an end, through various routes and with various properties. Some are better suited to one set of problems than another.

Java may not be the most elegant language (to put it mildly) but it's a solid one and it gives you some interesting long term options such as to use your knowledge of the Java runtime and libraries by adding Clojure.

6
nevdka 17 hours ago 0 replies      
If your concern is job security, learn COBOL.

If you want to become a better programmer, to be flexible enough to write whatever software needs to be written over the next couple of decades, then diversity is important. Learn a Lisp. Learn a scripting language like Perl. Learn something low-level, like C or C++. Learn a line of business language like Java or C#.

Most software doesn't require mastery of a specific language, and having a broad background will mean you can adapt to whatever the future decides is 'in'. Learn a bit of everything.

Edit: Don't learn COBOL.

7
sumodirjo 14 hours ago 0 replies      
I agree with striking about Go and Rust. But I think Python and Ruby is not going anywhere soon. Most large systems still use Java (or Scala) right now so this is a good skill too
8
coralreef 20 hours ago 0 replies      
On what platforms/systems do you enjoy building things for? Software/internet isn't going anywhere. Everything appears to be gradually shifting to mobile, but I still think websites will be just as important.
OS X vs. Linux?
points by code4eva  16 hours ago   20 comments top 12
1
matt_s 4 hours ago 0 replies      
The thing that gets me with OS X vs Linux or Windows is that the muscle memory in my hands works well with Windows and Linux shortcuts and window management. I have a MBP circa 2010 and love the hardware but the OS is meh. I really love how I can just close the lid to hibernate and it will stay like that for days. I haven't seen Windows or Linux be able to do that, although Windows on SSD boot up is very fast.

I use vagrant based VM's on Windows and OS X for development. Much better alternative than cygwin or similar. And you can custom build the vagrant VM to match your production environment.

When you are copying files, opening/closing windows, etc. all of that should be done without thinking. When it comes to differences in the OS you should go with what you are most comfortable with. They are all pretty much the same under the hood.

2
stevenspasbo 3 hours ago 0 replies      
I've been a linux user for about the last decade, but I've also had a macbook for about the last 4 years. I don't really mind the differences since I spend most of my time in the terminal anyways. After installing homebrew for package management I can pretty much do everything on OSX that I could under linux.
3
adultSwim 5 hours ago 1 reply      
I've been using OS X personally since about 2000. Used Windows and Linux plenty at work.

Right now I've been messing around trying to switch over to Linux. I'm using Arch and it's very rough around the edges.

My computer feels a lot faster but still trying to work out the kinks. Fools errand?

4
factorialboy 5 hours ago 0 replies      
Two weeks ago I gave up on OSX / MBPs too. Consider the Dell XPS 13/15 line or the ThinkPad Carbon line as a replacement.

I opted for the Dell XPS 15 -> http://amzn.to/1JeO1T2

PS: I already own a Dell XPS 13 (2013 model) running Linux

5
ni-hil 16 hours ago 0 replies      
If you want to try to stick with OSX you could try homebrew[1] + homebrew-cask[2] as a package manager, even if it probably won't be as good as what you were used to.

For battery life if you want to switch to ubuntu, the issue is probably that you are not using a good power manager which OSX does automatically behind the curtain. This could be a starting point : http://askubuntu.com/questions/285434/is-there-a-power-savin...

[1] http://brew.sh/[2] https://github.com/caskroom/homebrew-cask

6
smt88 15 hours ago 1 reply      
I used Windows (business), OS X (iOS dev), and Linux (backend dev) side-by-side -- sharing a mouse with Synergy -- for about a year.

As a regular user, I'd choose Windows, hands down. As a developer (or long-time Linux user, like you), I'd choose Linux. Ubuntu is the only OS I run now.

I recently installed Yosemite on my 2013 MBP, hoping it had fixed some of my complaints about previous versions. It was, instead, as massive regression. Many others have pointed out the same.

Stick with Linux. If you're productive and happy, why consider anything else?

The unfortunate thing is that non-Apple hardware is lacking in some ways, but you can shop around a bit and find something close.

7
duncan_bayne 15 hours ago 0 replies      
If you like running something BSD-based, maybe try one of the *BSDs ... I suggest starting out with PC-BSD: http://www.pcbsd.org/.

I switched from Linux to a custom FreeBSD setup a while ago and I'm enjoying it - I find it simpler, more stable, better engineered, better documented (the FreeBSD handbook is great!) and just generally a nicer OS to use. Hard to quantify, really, but it just feels nicer to use overall.

8
Watabou 15 hours ago 1 reply      
I do most of my development work on OS X and Linux, but for desktop environment, I would hands down use nothing else other than OS X.

I just love the integration. Everything looks nice (yes I even like Yosemite), the system is very stable, I can go days without so much as a restart, it doesn't break after I install a package from a package manager, the upgrade process is seamless, the hardware is second to none (even Linus Torvalds agrees), and I can always get help from the Apple Store if something goes wrong. Some of these things you can get with Windows/Linux, you can actually get pretty close, but you never seem to get them all.

The hardware and software integration on Linux seems to be really iffy, even if you get Linux to dual boot on OS X. The hardware support isn't there unless you compile your own kernel, which you have to get (if it's a newer system) an unstable version of, the touchpad gesture support isn't as nice, the whole OS doesn't look as nice as OS X, and you miss out on the integration between iOS, which is really important to me, at least. OS X is a proper Unix system, so any Linux command line tool will also run on OS X. And you actually get the basic tools out of the box (vim, ruby, python, zsh, tmux, perl, etc, etc). If not, you can get a really good package manager in the form of homebrew, and while it's not as powerful as apt-get, it's pretty much all I want from a system package manager.

I am also not a big fan of managing windows or using a tiling window manager, I don't even use them when I'm on Linux. I actually prefer using OS X's default Mission Control/Expose behavior (I know.). I toyed around with Moom, Slate (https://github.com/jigish/slate) but gave it up. I don't like windows to snap, that's an absolute asinine behavior that seems to be the default on Linux desktops these days, that I always have to unset. I never knew why anyone would be a fan of it, unfortunately, most people are. I just have my terminal run tmux and live there. Command+Tab is enough for me.

That all said (sorry if the above turned out to be a bit of a rant), Linux desktop environments are slowly getting much better, I'm really liking the look of Plasma and Gnome 3 (although that huge chrome, seriously?), and Elementary OS is easily the best Linux distro I've used.

9
CyberFonic 12 hours ago 0 replies      
What's stopping Linux running as well as on a Thinkpad on MBP?

If even Linus uses it, then surely the heating, battery life, etc problems could be easily solved. But AFAIK, they haven't yet - it just doesn't make sense? Anybody able to shed some light on why it is so?

10
matchstickman 14 hours ago 1 reply      
Same thing here [ubuntu 14.4 on MBP]. Also, my inbuild camera does not work. :(

Also, if I accidentally unplug my ethernet cable, I have to reboot my machine to get an internet connection again

11
nickysielicki 6 hours ago 0 replies      
Perfection only lives in your mind.
12
fit2rule 12 hours ago 1 reply      
I run Linux on a VM on my MBPro, and I honestly can't tell the difference between that and another dedicated laptop running Linux .. VMWare (and the newest Parallels) is pretty good at running Linux these days, and - unless you need raw metal performance - is performant enough that I don't even really notice the difference. Its like having two machines in one.
Ask HN: What kind of salary should I be looking at?
points by codecurve  18 hours ago   7 comments top 4
1
izolate 2 hours ago 0 replies      
I'm looking for a good JavaScript developer to join our team of 5 in Shoreditch, London. We use JS client-side and server-side and are pretty experimental with our tech. And I'm pretty sure we could offer you a salary you'd be happy with.

Fancy a chat? Send me an email (address in profile).

2
hackerboos 8 hours ago 1 reply      
The replies you have gotten so far have been US orientated and vastly overestimate salaries here in the UK. Especially the UK outside of London.

Assuming you are in Cardiff, possibly Newport, a starting salary for a graduate is around 21,000 - 25,000. With your experience however I'd expect that 25,000 - 35,000 isn't impossible if the company wants a strong Angular dev.

My advice is that you should move to the South East of England, if it's feasible, salaries are way higher than the rest of the country.

3
techjuice 17 hours ago 1 reply      
What you should ask for depends on how easy your able to accomplish tasks and bring value with your work with the technology and business skills you provide to the company (How much money you generate or save vs them hiring more people to do what you do for less. Or how smooth and professional your work is compared to your peers.). You should also take into account how much money the company is generating. If your going to go work for a large bank your starting salary can be much higher versus going to work for a small or medium size business that does not have quarterly profits in the multi-millions or more.

Just be careful with the Senior level jobs, I would would not recommend going for them unless you really know the technology inside/out and develop in it with ease.

If your knocking out large applications with ease

Which are you:journeyman, junior,intermediate, senior, expert, master developer?

Regular ranges here in the USA metro areas are among the following:

For your general development:(Generic Java/C#/etc. General Website Design/Development)Journeyman:$50k-$59kJunior:$60k-$79kIntermediate:$80k-$89kSenior:$90k-$180kExpert:$181k-$250kMaster:$251k-$1M+

For high demand programming languages/skills(Ruby/PHP/Java/Python/Node.js/large company Java and/or C# high performance optimization on the JVM or .NET Framework or websites and automation)Journeyman:$60k-$69kJunior:$70k-$79kIntermediate:$80k-$89kSenior:$90k-$199kExpert:$200k-$399kMaster:$400k-$1M+

For specialized programming languages/skills (GPU/Cuda/OpenGL/ORACLE/C/C++/Cryptology/Game Engine development/Finance/Graphics or Animation software)Journeyman:$90k-$99kJunior:$100k-$119kIntermediate:$120k-$250kSenior:$250k-$400kExpert:$500k-$750kMaster:$750k-$2M+

Also note these are for salaried positions, if interviewing for contract positions you would double the amounts since you are also covering the employers share, your own vacation, medical, dental, health, life insurance, savings, and investment income.

Just remember don't sell yourself short and get what you know your worth.

4
grhmc 18 hours ago 0 replies      
My strategy is to look in the mirror, and say a number. $60,000. Go up... $80,000. $90,000. $100,000. Until you laugh, then step back down one. Then ask for that. I've never been turned away from a job for asking too much.
I bought js.org and want to give it back to the JavaScript community
points by jsorg  22 hours ago   20 comments top 8
1
yunyeng 18 hours ago 2 replies      
Lets create an online Javascript bible, not the frameworks like angular, ember, backbone etc... But core javascript, objects, constructor functions, bitwise operators. Everything about Javascript language should be there.
2
matt_s 6 hours ago 0 replies      
There is site called Ruby Toolbox[1] and I find that helpful for doing the initial research for a library and if its active, useful to me, and how popular.

An initial Google search indicates there is a site like this for JavaScript, but checking it show it is an internet lifetime ago (5-6 years).

A fact based inventory of major JS libraries with downloads, bugs and updated_at stats would be helpful. The challenge would be keeping it fresh. If project "owners" can submit their own info that would help.

[1] https://www.ruby-toolbox.com/

3
josemando 18 hours ago 0 replies      
You could focus on redirects, maybe some for npm modules, other for jquery plugins, etc

Also you could link/redirect references, like the Mozilla one https://developer.mozilla.org/en-US/docs/Web/JavaScript (Mozilla rocks \o/)

4
califield 21 hours ago 1 reply      
You could make it a redirect service for npm modules.

e.g. https://js.org/express 301 redirects to https://www.npmjs.com/package/express

Another idea is a blog. One of my favorite blogs is http://npmawesome.com/

5
galfarragem 19 hours ago 1 reply      
You could somehow use it to establish kind of an official page to JS-community. Right now js-community is divided, there is the angular community, the jquery community, the node community, the meteor community, etc, but a JS community that would aggregate all JS project communities is not organized yet. Without it JS will always look less popular than it really is.
6
striking 22 hours ago 1 reply      
Free subdomains and email would be really cool, actually. However, who is "Everyone"? Who gets a subdomain/email address?
7
thekillerdev 19 hours ago 0 replies      
subdomain + email is a good thing, setup a invite only "not so" closed beta staging, see if it works. Write a user agreement understanding that this is a test enviroment and making them aknowledge that all their data hosted on that email can be erased.

So you are safe, and can see if it at least work it out.

8
kevinsimper 7 hours ago 0 replies      
Emails for open sources projects would be awesome!
Ask HN: Why is soylent worth $100M dollars?
points by giaour  1 day ago   19 comments top 10
1
IanDrake 1 day ago 1 reply      
>they've proven themselves unable to meet customer demand in a timely fashion

Well, that's a good thing, certainly better than the opposite.

>What makes them different from any other meal replacement shake vendor?

IMO, a focus on being a food replacement rather than a meal replacement.

A food replacement needs to have all your nutrition in one product. They don't care about taste.

Slimfast, as you suggested as a comparison, isn't meant as a 2,100 calorie/day food replacement. You'd have to drink ten 11oz cans to get that many calories and that would throw off the entire ratio of fat, carbs, protein, and nutrients per day.

In any case, soylent seems to have the right product/market fit.

2
debacle 6 hours ago 0 replies      
Because interest rates are at a record low and will be there for the foreseeable future. Any startup with even a hint of success is still getting funded.
3
toomuchtodo 1 day ago 3 replies      
Same reason Tesla is valued so highly, even though they're not profitable yet. Expectations.

Also, their product is nutritionally completely. It's not slimfast. I'm sure you've compared the nutritional information, right? Of course you have.

4
fragmede 1 day ago 0 replies      
Just answering "marketing" is a bit glib, but it's a large part of it. Read NutraFit's marketing on e page you linked - it's all about muscle building whey-powder protein. If I don't care to set foot in a gym, that doesn't appeal to me. Soylent identified an underserved market and is catering to them.

Underarmor had a similar revelation - selling what previously amounted to women's underwear, to men - and they've made a killing doing so.

GoPro is yet another example of this at work.

5
smt88 1 day ago 0 replies      
Valuations have much more to do with social issues (faith in founders, quality of lead investor, size of recent exits) than it does the product.

The product could be terrible, but if all those things are in place, investors could be fighting each other to get a piece of the deal.

You can fix a product in the future, with enough money. You can't fix a founding team, and you can't go back in time to join a deal that you missed out on.

6
joshtronic 1 day ago 1 reply      
Shot in the dark here, but perhaps it's the fact that consumer demand is (and has been) so high. Unsure how many orders they have backlogged at this point, but they took money for each of those orders. For all we know, they could have 30m$ in back orders making that valuation pretty reasonable
7
SEJeff 1 day ago 0 replies      
One word: Marketing
8
suchow 1 day ago 1 reply      
Soylent has a bigger vision. Here's a recent statement of it by its founder, Rob Rhinehart. Start 5 paragraphs in.

http://robrhinehart.com/?p=1192

9
MalcolmDiggs 1 day ago 0 replies      
Precisely because of this kind of thread. It's the rare meal-replacement shake that gets both detractors and proponents posting and talking about it all over the place. It's getting exposure and hype in channels that slimfast could only dream about. It's a marketer's wet dream.
10
deadfall 1 day ago 0 replies      
Current Customers Sales + Potential Customer Demand = Value?
Ask HN: How do people with successful careers play the game?
points by nns  1 day ago   14 comments top 8
1
marypublic 1 day ago 1 reply      
Read this book: http://www.amazon.com/How-Star-Work-Breakthrough-Strategies/... and do what it says.

(I am a senior technical resource in an environment like you describe. Read this after I was pretty far along but it basically sounds like how I operated to get where I am.)

Don't waste time. Be mission/vision focused. Be polite to everyone always. Be helpful whenever possible. Be insanely organized. Do not be That Guy/Gal who is always forgetting things, late to meetings, doing the wrong thing, asking stupid questions about stuff that's already been covered in meetings, etc. Seek and respond to constructive feedback on your work. Do the sh#t work without whining. All of this will build human capital with other people in the organization, which will both practically give you more resources of help from others to draw on in your work requirements, but also increases your visibility with people who aren't on the front lines doing the work (e.g. Management). That visibility gives you the means to move in whatever direction you might desire. It also (for want of a better way to put it) usually tends to help make you layoff-proof because people know you are competent, professional, and have some flexibility to work as part of a team.

None of this means you are anyone other than who you are. Don't kiss anyone's a##, but also don't be an a##hole. At the end of the day with two people even remotely similar in "technical" capability, personal behavior will matter for increasing your effectiveness within any organization.

2
percept 1 day ago 0 replies      
In a truly dynamic environment there should be more opportunity to figure out where you can best contribute as a team member. (Work is about more than simple technology.)

Maybe you're blocked in some areas, but are there others where you can help with your unique combination of knowledge and experience?

It doesn't even have to be directed at the core of the project. Some teams aren't good at creating infrastructure; maybe there's a need in the areas of documentation, devops, or bug tracking and fixing. Stuff others don't want to touch.

Consider starting there. (And always be thinking about your next move.)

3
tixocloud 1 day ago 0 replies      
Be helpful.

A lot of people talk about playing the game. You don't have to play any game. Besides delivering the best quality work, Be helpful to everyone around you - including your boss, his boss, your peers, etc. Emotional intelligence is a huge component in driving one's career forward. Be sensitive to everyone around you. Know when to say and what to say at which time.

In addition to marypublic mentioned about being organized, I would say being able to communicate/articulate your ideas and turn them from complex details to simple nuggets of information.

4
alexpotato 23 hours ago 0 replies      
Every company/organization/group etc has multiple "dimensions" that they use to determine who is valuable and who is not.

For example, in a technical organization, one dimension might be ability to quickly create production level code. Another dimension might be ability to refactor legacy code.

In a sales organization the dimensions might be different e.g. ability to make existing customers happy vs ability to find new customers.

NOTE: even in the same company, one group may have different dimensions than other groups.

The key is to:

a. figure out which dimensions your company/group/manager are using to define value

b. if there are multiple dimensions, try to find the ones that are easiest/most natural for you but are hardest/least natural for others

c. focus on maximizing b

d. profit

Case in point: I once worked at a high frequency trading firm. I was one of the few people WITHOUT a STEM PhD. However, I was much better, relatively speaking, at over the phone customer interactions/support. Within a month of being there I was made Head of Customer Support purely as a function of being the group member with the best people skills.

Another key point, be wary of creating "Unspoken Covenants" e.g. "If I do X, my manager should do Y".

No they don't.

Go to your manager and say propose a mutually beneficial agreement. e.g.

You: "I would like an increase in salary/title/benefits/vacation days. I know that's a big ask but I know you value sales/code quality/production rate, correct?"

Manager: "Why, yes I do!"

You: "Great. I can improve that thanks to %ABILITY. If I do that can I get my initial ask?"

They should be saying "Hell yes!!" at this point. If not, you may have either misjudged what they value or you are dealing with someone who doesn't believe in mutually beneficial agreements.

5
sinelanguage 1 day ago 1 reply      
Neil Young said it best, "keep your head down and walk forward". Don't just look at the people who you perceive are moving forward, look at the ones that appear to be standing still, and what do you think is the difference?. Sure there are those that have moved forward due to being able to dramatize with success the superficial things and say/wear/do/hangoutwith all the right things and trick higher ups into believing they have more real authentic capability than they actual do, but that only lasts so long. Where you really move forward is in your authenticity. If you authentically love what you do, and you excel at it, and you look forward to advancing it forward no matter where you work or what you're paid, then you're pretty much invincible. You will naturally exude passion for your chosen skillsets, you will embrace all that is thrown at you with gusto, and people will naturally gravitate towards that. Most of all, pay it forward. Mentor those around you in the same skillset area, and make a difference and demonstrate that even though you are an expert and SR level in your field, that the success of the team is rooted in the power of everyone being able to produce at the same level as you. When you do that, whether you are intentionally trying to impress your superiors or not, it won't matter, they will notice, and if they don't, then you have some choices to make. In field of dreams, the phrase, "if you build it they will come", applies to you as a person, if you become the highly skilled, sr level expert, that exudes passion and innovative mindsets, people will come, they will gravitate towards it and you will be successful. Maybe not as fast as those just phoning it in and playing the parts really well, but slow and steady always wins the race. I work in a highly competitive environment and I am not even a full time staff, yet because I practice what I just preached, whenever a PM needs dev work done, my name usually comes up very early in the conversation. That wasn't a calculated thing on my part, I didn't play a game, I didn't coax anyone my direction, I just work really hard because I love being a developer, I constantly evolve and advance my skills because I feel empowered when I build more advanced things with code, and my authenticity and passion is obvious and authentic and people with good intentions will always appreciate that and gravitate towards it. Now does this work EVERYWHERE? Hell no, but its up to you to decide what works for you in terms of where you work, and don't compromise your authenticity just to move up or make more, its not worth it in the end.
6
partisan 1 day ago 0 replies      
Sounds like a great place to be. I would say you should pick someone who you admire most in the group and try to emulate their behavior.
7
rubiquity 1 day ago 1 reply      
I would work on finding an environment where only high quality work matters. If you're in an environment where ass kissing matters you aren't actually in a high quality environment.
8
bjourne 1 day ago 0 replies      
What is a successful career to you?
Ask HN: Recording sales calls for training and posterity?
points by zaroth  12 hours ago   1 comment top
1
deathtrader666 12 hours ago 0 replies      
Check out Close.io
Ask HN: We Have Been Asked for a Price to License Our Online Game. How Much?
points by garrettdreyfus  18 hours ago   2 comments top 2
1
hashtag 16 hours ago 0 replies      
Congrats. I have no advice to offer as I am not knowledgeable enough in this area but I would love it if you could do a follow up after. Would be informative.
2
kayhi 18 hours ago 0 replies      
Ask them for the range that they had in mind
       cached 21 January 2015 21:05:01 GMT