command to connect to the same kernel that the browser is attached to. I can do more complicated coding in that repl (inside of emacs). Then, when I need visual feedback, I do some kind of one liner plot and hit play in the browser.
It works pretty well, but maybe this will make the whole thing smoother.
>In general though Groovy/Grails is actually surprisingly good.
I'll second that. Groovy is amazing but under appreciated on places like hacker news. Interesting that you bring up python because I find groovy very pythonic in some ways. Even more so with the new type hinting stuff python is introducing.
Although for lighter weight web stuff I've been watching the http://ratpack.io/ project.
I think you are right that there are a lot of developer worker bees in MN who are not excellent.
However, there is a somewhat tight-knit subpopulation of developers that are forward thinking, talented and excellent at CS. You will find them at various tech meetups or at events like minnedemo. A lot of them are alums or connected to alums of some of the startups here (yes we do have them!). I'm thinking of Bloom Health, SmartThings, HomeSpotter, Code42, Gravie and a few others I'm forgetting.
The key to finding talent in MN is a little bit of networking, it is definitely out there.
I think you are right they are targeting large advertisers with significant spend.
It's a unique approach in that they don't need a lot of granular attribution data, but instead use higher level aggregate data. As a result it's easier to integrate with all kinds of media campaigns.
You need to be able to provide impressions over time for your early funnel ads and conversions over time for your late funnel touchpoints. They use some econometric time series techniques to analyze and estimate the impact so you can focus on whats working.
Very True. I'm pretty sure that quote wasn't meant to be a critique of the Groovy language, just an expression of interest in Scala. Yet its brought out every time somebody wants to dismiss Groovy.
Compare that quote to this[1] presentation where Paul Phillips lays in to scala for 50 minutes. Even when somebody does criticize their own creation I doubt they mean "Hey everybody, that thing I spent a bunch of time on? Throw it all in the garbage, its pointless".
I'm not sure about haskell, but in clojure the, run code, reason, run more code cycle is very much supported with the repl.
In fact I find the nature of functional code very much helps out here. With clojure, in a complicated system I can typically take any subcomponent and run it in the repl without much fuss/mocking or worrying about the state of the system. Since usually functions aren't modifying state I can rerun, modify, rerun over and over again without restarts.
R and matlab are better, but those tools also have issues integrating into production depending on what you are doing. It's not so much the exact tool you use, but just having a little forethought about how your creation is going to interact with a production system.
A lot of people feel programming is undervalued in academia. For instance Hadley Wickham creator of ggplot2 probably hasn't gotten the recognition he deserves. With a prevailing attitude such as that is it any wonder academic code has such a poor reputation?
Whickham notes that he thinks tides are changing. I agree that it is, as a part of the datascience phenomenon. As part of the change you are going to see a few more macbooks, some cloud servers, maybe a guy with glasses talking about version control and software design. It is not all garbage, I hope you keep an open mind.
Q:Do you feel that the academic culture has caught up with and supports
non-traditional academic contributions (e.g. R packages instead of
papers)?
A:It’s hard to tell. I think it’s getting better, but it’s still hard to
get recognition that software development is an intellectual activity
in the same way that developing a new mathematical theorem is.[1]
In practice I find the bigger problem is from analysts/actuaries/statisticians who have a disdain for programming, which sometimes is viewed as a task for mere technicians.
Typically your excel model/analysis has not even solved half the problem of a datascience system. It needs to be repeatable, it needs to be open to change (source control!), it needs to be integratable with the wider system.
These things need to be considered upfront. There are plenty of reasonable software tools for this. Yes hadoop shouldn't be your first step, but taking 5 minutes to put something on a server in ec2 (omg, the cloud) is not unreasonable.
There is a swallowing abyss between excel and production. That is where datascience projects die, its a shame.
This randomly reminded me of an ancient kuro5hin article that I found interesting back in the day. Where the proposal was to use brute force to implement comment search on kuro5hin.
I wouldn't frame the question as "what did you do wrong". As other people in this thread have pointed out you may have dodged a bullet. It could very well be that this company is in the "wrong".
A better question to ask is what can you do to make yourself more attractive and increase the probability of closing the deal with the next company. Think like a salesman.
The fact that you told him you currently make close to what their interns make jumps out at me. Perhaps you think that would make you more attractive, but it may have had the opposite effect.
The head of engineering may have been told by his team that you have a lot of expertise, skill and potential and then all of a sudden he finds out you get paid at an intern level. He is going to ask himself what am I missing? If you are so good why doesn't anybody else value you at that level. People want to have a good feeling in their gut when they make a big purchase and a large previous salary gap may have unsettled that.
A better head of engineering wouldn't we swayed by previous salary, but the truth of the matter is a lot of decision makers are not perfectly rational.
My advice to you is to google strategies for dealing with the "what is your current salary" question and be better prepared for that situation.
You end up with broken code. If you are lucky it has a syntax error. If you are not lucky you get mysterious bugs.
The work around is to go back and try re-editing the file to retrigger a sync.
There are lots recommendations to try Fusion over Vbox but I think this issue makes it a wash.