Fork me on GitHub
#off-topic
<
2017-03-24
>
tagore00:03:58

@jstew Replying to something a bit old, but... I wouldn't take stack-overflow's salary data very seriously, tbh, especially without thinking very hard about confounding factors.

tagore00:03:23

@jstew- I mean, even if the reasons I wouldn't take SO's survey weren't the case, I'd still want to think hard about the confounding factors.

tagore00:03:15

- err take SO's survey very seriously, I mean

tagore00:03:49

One interesting data point I noticed lately is that Disney has been advertising for a d3 programmer at 250k a year recently...

tagore00:03:57

That's pretty substantial advertised pay for a dedicated JS developer role- more than I think I've seen before.

tagore00:03:55

But I'm not entirely surprised in the era of (at least occasional) 100k starting salaries for recent bootcamp grads... to do d3 to the degree I imagine they require requires quite a bit of background. So maybe the market is bifurcating into highly paid inexperienced developers, very highly paid developers who can keep the juniors on track and polish their rough edges, and very, very, highly paid developers with real background and the ability to apply math and a knowledge of algorithms to hard peoblems.

tagore00:03:18

I guess that would be more trifurcating...

tagore00:03:32

Programmer pay in the US seems like a bubble to me, but I've been wrong before, so...

tagore00:03:33

On the other hand, the x-furcation of it seems like a resilient feature to me.

tagore00:03:45

Anyway, to bring it back to Clojure and Clojurescript...

tagore00:03:07

Well, I used to do a lot of Common Lisp, from well before Clojure existed, and while there weren't a lot of CL professional CL programmers even then, they tended to be paid quite well.

tagore00:03:15

That wasn't a reflection of the demand for CL programmers- it's just that CL programmers tended to be either MIT greybeards, people who had come to CL after many years of experience with other languages, or the most inquisitive and self-searching young programmers around. It's not surprising that they commanded a certain premium.

tagore00:03:54

I suspect this effect is less strong for Clojure than it was for CL, just because Clojure is so visible, but I'd be surprised if it weren't important.

tagore00:03:21

In other words, pay for one language might be higher than average pay for another because that language is more often used by people who have more experience, rarer skills, or tend to produce more value.

tagore01:03:44

So pretty much what I'm saying is... it would be a mistake to look at survey results like this, even if we trusted them statistically (which we, I hope, don't,) and decide to switch languages in order to get paid more.

tagore01:03:23

Still- that puts language more at the center of what we do than I'd like (though it does matter.)

tagore01:03:35

When hiring I'd take a great PHP programmer over a weak anything else programmer.

qqq01:03:23

anyone here with reviews on softlayer or ovh ? I'm looking for dedicated hosting instead of gae/aws

tagore01:03:39

I've been looking at it lately, as a matter of due diligence, but I have no experience with it.

tagore01:03:31

There are a lot of alternatives if all you want is hosting though, and some might be cheaper/simpler.

tbaldridge01:03:16

There is a bump in average pay when it comes to functional programming. But I think experience plays a big part here. I think I could count on one hand the number of Clojure programmers I know in their early 20s. While most young programmers I know are using PHP, Ruby or something of that nature.

tbaldridge01:03:02

In some ways Clojure was made for programmers who have some experience, and that probably skews the numbers even more.

tagore01:03:01

Sure- and I could pretty credibly apply for Disney's 250k d3 position. Other Disney divisions already pay licensing fees for software I wrote.

tagore01:03:35

Spo perhaps that would be an in...

tagore01:03:27

I am a bit bemused by the whole bootcamp thing, though.

tagore01:03:53

I'm inclined to think that I'm not that interested in working on trivial problems.

tagore01:03:41

Bootcamps seem to be designed to produce a lot of people who can only work on trivial problems.

tagore01:03:24

What will they do when they get generalized away?

tbaldridge02:03:10

@tagore or the 6 people who have asked me "what's the quickest way to learn to do what you do".

tbaldridge02:03:42

"Um...well...I've been programming since I was 10, so I'm not really sure how to condense two decades of learning into a few short classes"

tagore02:03:13

@tbaldridge: yep- but, tbh, what I mostly do at my current job I could probably teach anyone reasonably bright to do in a year or two, especially if we paired a lot.

tagore02:03:11

Or at least I could teach them 90% of it- the last 10% does occasionally matter.

tagore02:03:32

OTOH, if you'll excuse me a bit of immodesty, my last job required that I become the foremost researcher in my (rather narrow) field, and required me to solve long-standing research problems.

tagore02:03:39

How to do that...

tagore02:03:14

Cannot, entirely, be taught.

tbaldridge02:03:05

Yeah, the whole "intuition" bit takes awhile to pick up. The part where you see a bit of code and think "eh...this doesn't look right...oh there it is, that bit is O(n*n)."

tagore02:03:42

Well- I think that knowing what is O N^2 can be taught

tagore02:03:28

What is hard to teach is how to approach real problems.

tagore02:03:58

And by real problems, I mean problems other people have put a fair bit of work into solving.

tagore02:03:26

Honestly, I think it's a bit insane that anyone reasonably bright can go from a boot-camp to a close to 6-figure job these days.

tagore02:03:58

I think that's unlikely to be the case for very long.

tbaldridge02:03:18

Well that is the world we live in, take some idea, slap a website on it, and sell it off to the highest investor.

tbaldridge02:03:37

Yeah, I think the whole startup culture won't last much longer.

tagore02:03:19

I'm just looking at entry-level salaries for, say, chemical engineers, and comparing them to bootcamp grads.

qqq05:03:22

@tagore @tbaldridge : in my experience, learning running time analysis is easy; the really hard part is figuring out when it's okay to a a 'large' but shallow function and when to decompose into an orthogonal set of small functions

jimmy05:03:46

does anyone know how to write intellij plugin in clojure ?

gklijs06:03:07

The guys from cursive do, as it's written in clojure.

jimmy08:03:14

nice, do we have any small example. I would love to use it to tweak intellij 😄

mpenet11:03:17

actually cursive is written in a mix of languages I think

mpenet11:03:39

some of it is in kotlin if I recall

mpenet11:03:24

when you need for instance to extend abstract classes or other interop things that clj isn't so good at that's what you end up having to do (drop down to java & co)

jimmy11:03:10

yeah, it would be nice that some one would build that nice abstraction

jimmy11:03:35

so we can extend intellij with clojure like others do it with elisp in emacs

qqq16:03:35

what do people mean when they refer to the 'death spiral' in obamacare ?

qqq16:03:55

and how is repealing obamacare relatex to the tax cuts Trump has promised

donaldball16:03:58

The implication is that insurers aren’t profitable issuing plans on the exchanges, so they’re either a. pulling out entirely or b. raising rates high enough that healthy people drop out which reinforces the spiral

donaldball16:03:36

Aetna iirc claimed (a) famously as they pulled out of a bunch of counties, but it was found in court that they were doing so disingenuously as part of some antitrust shenanigans. Most economists believe ACA policies were somewhat underpriced initially, then somewhat overpriced, and have now converged on profitability.

qqq16:03:40

@donaldball : so economicsts believe that the death spiral is not real, and Obamacare will stabilize at profitability and thus is sustainable ?

donaldball16:03:34

That’s my read. Of course, even if the AHCA repeal doesn’t pass, the Trump administration can do lots of things by omission and commission to help the ACA fail if that’s their intent. 😕

bja17:03:44

Given that the previous administration ordered the IRS to suspend the mandate penalty collection while the program was getting up, couldn't the current administration simply order the IRS to not collect the mandate penalty? That would go a decent amount of the way towards making it fail if healthy people can opt-out and only assume the usual risk

fellshard18:03:20

Personal autonomy is a systems-based approach, more adaptable than mandate. 😉

fellshard18:03:05

Would highly recommend reading Thomas Sowell's 'Basic Economics'. Gives crisp reasoning and historical examples for just this kind of scenario.

donaldball18:03:08

As part of a survey of broad economic perspectives, maybe, but I think most economists would put Thomas Sowell firmly on the libertarian fringes

bja18:03:06

@fellshard I wasn't making any particular judgement or recommendation. Just stating that if one administration did something, another can probably do it too. The argument for the mandate was that if healthy young people (who have much less risk) aren't forced to shoulder the risk over older or less healthy people, the costs wouldn't line up. If you remove the stick from the mandate (no more penalty for ignoring the mandate), then healthy young people return to the original status quo of a personal risk assessment for purchasing insurance. @donaldball was mentioning that Trump administration can do other things to help the ACA fail, and I was mentioning a possible example.

fellshard18:03:26

Perhaps, but would rather it fail without disastrous consequences in the interim. What would be the result of removing the penalty in this case?

fellshard18:03:10

Open choice for younger individuals, but what parts of ACA remain in motion?

cfleming18:03:44

@nxqd @gklijs @mpenet Right, Cursive is written in a mix of Clojure and Kotlin, about 50/50 these days. I use a fork of Clojure which allows class extension to handle that part, but I use Kotlin for anything that’s run eagerly at startup to avoid the startup time penalty.

cfleming18:03:13

Kotlin is just nicer for any interop-heavy code too, so new code using a lot of interop generally gets written in Kotlin.

fellshard19:03:36

Kotlin is pretty okay. Definitely a good deal better than raw Java.

fellshard19:03:58

Which is also nice, since the Clojure standard Java interop should still work nicely with Kotlin.

cfleming22:03:00

@fellshard I’d say Kotlin is more than a better Java - in my experience it’s also a sufficient Clojure.

cfleming22:03:40

In some cases it is even gasp better (interop, null handling)

cfleming22:03:07

Heretical, I know

fellshard23:03:04

I vacillate between the two, to be honest. I haven't had problems with Clojure and null-handling, but then again I haven't done much Java interop and I can easily see it become much more prominent then. Other than that, I have some nitpicks with the language (e.g. the coroutines they added... /sigh. Wrong solution to the problem, imo), and it's no Lisp, but it's leaps and bounds above Java in terms of simpler function typing.