HNHacker News
TopNewBestAskShowJobs

joostdevries

270 karma · joined August 16, 2013

https://joost-de-vries.bsky.social
submissionscomments
joostdevries··on I Was Wrong About TypeScript
With the arrival of TS 2.0 this month (hopefully) we'll have some cool features: a union types [1] b type guards to work with them [1] c nonullable types [2]

[1] https://www.typescriptlang.org/docs/handbook/advanced-types.... [2] https://github.com/Microsoft/TypeScript/pull/7140

As a Scala developer I like Typescript a lot. Which is a first for me in browser development.

But I'm not so fond of webpack et al. So I created a sbt-typescript plugin. And now I have incremental compilation of NG2 - Play apps for both the browser side and the server side. In a single build definition. It's a nice experience.

joostdevries··on Scala Native
It is not released. But you can publish it locally. Compiling the demo-native subproject seems to work. When I try to run it I get a LinkingError though.
joostdevries··on Scala Native
Snif. sbt demoNative/compile seems to work. But sbt demoNative/run produces a scala.scalanative.linker.LinkingError Unresolved dependencies: `#scala.Serializable`
joostdevries··on Scala Native
I remember Martin Odersky explaining how the Scala compiler has to do a lot of work to compile FP code to a JVM that is mostly geared for the Java language only. Because of that the compiler is well positioned to compile to other targets as well. Like Javascript or LLVM.

Are you talking about compromises in the language or the standard library? In the language itself I can only think of type erasure for generics having to follow the JVM choice.

joostdevries··on Upgrading from React 0.11.2 to 0.14.7 in 347 easy steps
> stacktrace > an you spot the problem? Yeah, me neither.

I did spot the problem. But then I'm in the middle of making sbt behave civily with typescript and angular2.

Of course I could just use webpack or some other javascript buildtool. But I like to have integrated incremental compilation for frontend and backend. And since our backend is Scala I'm working in my weekends on a typescript sbt plugin. I guess I should get out more.

joostdevries··on Functional Programming at Facebook
I would call Scala a functional language. In the sense that object-orientation and FP are not eachothers opposite. Imperative and FP are. I guess awkwardness is in the eye of the beholder. I think it's an elegant language with which it is a joy to develop large code bases.
joostdevries··on The EU Is on the Verge of Collapse–An Interview with George Soros
I'm not terribly interested in the views of a billionaire investor on the EU. I have to say though that I searched for the original interview in Wirtschaftswoche and Handelsblatt Online. And I did not find words as strong as "on the verge of a collapse". Those articles read "on the future of the EU [he] is pessimistic"

All the same the Schengen treaty is at risk with the current flood of immigrants. [1]

As far as the EU goes: I'm a Dutch citizen. And the NL have a long history of belonging to a coöperation of nations. Just after WWII it founed the BeNeLux. And it was a founding member of the EU later on. So I lived in a supra-national organisation for as long as I live. And I have to say that when I work here in the NL with people from France, Spain, Italy, Germany, ... I truly feel that we're all Europeans. It's some feeling of shared fate, shared history, shared culture, speaking their languages, intuïtively knowing their characteristic strengths and foibles. So as far as I'm concerned even if the current EU would fail we'll just start anew with an EU 2.0. Less expansionist and less idealistic probably. Sadder and wiser surely. But in my estimation the sense of a shared EU identity has become stronger than even the current vicissitudes or the meddling from billionaire investors.

[1] http://www.theguardian.com/world/2016/jan/21/dutch-pm-says-r...

joostdevries··on I met you in the rain on the last day of 1972
There's one view of life where everything is only about ultimate timeless contextless values. That seems your perspective here. '...so by the transitive property it's only about fucking.' At some point in my life I learned that I no longer subscribe to that point of view. The way I read that story is that within the context of flying bombing raids he felt he had no right to live. Which to me as a reader shows that he empathises with the people he bombed. It's not an eternal truth about man killing man happening but it's something he did to another human being. When he meets the girl in the rain he's in another context in another moment between people. And he feels worthwhile for a moment again. She leaves him in the story so the fucking end goal is taken of the table. It was just an isolated moment that's meaningful in itself. And he feels differently. If we want to give the transition of feeling a name we might say he feels redeemed. Just like the meeting in the rain was isolated and without end result similarly the posting on craigslist is without end result and follow up but it's still meaningful after 40+ yrs. Which goes to underscore that our emotions in life are often without end result and followed by totally different emotions and attendant value systems. But we have to experience them as meaningful anyway. Because the alternative is nihilism and depression.

Just an impression of what goes through me at this point in my life when I read that story. I recognise your take on it as well. It's just that I learned that looking at life like that did not make me happy in the end. And that the feeling of intellectual victory was without substance.

joostdevries··on Ask HN: What stack would you use to build a CRUD web app on the JVM today?
I agree. And I'd add that the continuous compilation of the Play framework allows for a great, fast workflow. Even in combination with non-JVM compilation like for Typescript.

The last version comes with Slick integration which brings Ling-for-Sql style persistency to the JVM. In combination with support for Postgress JSON persistency that makes for a great fast prototyping stack.

joostdevries··on Haskell's Type Classes: We Can Do Better
John de Goes mentions at the start of his article how Scala implements type classes without an extra language construct. But he doesn't show what his example would look like in Scala. So I wrote that out for my own amusement.

You can find the gist here. https://gist.github.com/joost-de-vries/949fbea6345fec1ac4ef

joostdevries··on Koka – A function-oriented programming language
Martin Odersky is planning to add polymorphic side effect types to Scala.

Lucas Rytz' PhD research describes an early incarnation. The syntax will be different: side effects will be modeled as implicit evidence. But the semantis will be largely the same I believe.

I seem to remember that the default will be that if no side effects are declared that any side effect is assumed. At least that was the idea in Rytz' PhD thesis. The reason for this was pragmatics: the only effect system in a main stream language is Javas checked exceptions. And for that the communis opinio ended up being that the idea is right but having to declare exceptions in intermediary layers of the call graph was not worth the effort. That's why f.i. Anders Hjelberg left checked exceptions out off C#. So getting the usability right is extremely important for a widely adopted effect system.

Btw there are a lot of publications around 2012 on the topic of effect systems.

http://lrytz.flavors.me/#publications-talks

joostdevries··on Beyond Bash: Shell scripting in a typed, OO language
Li Haoyi has been doing a lot of cool open source Scala work. Ammonite is an example of that. You can find it here https://github.com/lihaoyi/Ammonite
joostdevries··on Compilers Are Databases [video]
Before I clicked the link I knew which video it would be. For some reason it's largely the single fact that people on nyc seem remember about Scala.

If you watch the presentation by Odersky you'll find that the new compiler addresses most if not all the things that Paul Philips mentioned.

For instance the new compiler has 5 phases. Just like javac.

joostdevries··on Compilers Are Databases [video]
It seems you've only read the title of this post.

Too bad. It's an interesting talk on the architecture of an ambitious compiler redesign. The title is a simplification for the sake of being a keynote.

joostdevries··on Compilers Are Databases [video]
Well, some things do have the type unit or Any (top). How would you express that if that means 'not known' in your compiler?
joostdevries··on Compilers Are Databases [video]
I think "functional database" can be seen as a wider data pattern than just a datastore that exclusively implements that pattern. It's a design principle where a piece of data once created is never changed. That leads to event sourcing or Twitters "lambda architecture".

The compiler is a database in the sense that it has a memory across incremental invocations. So the 'storage' happens to be in memory but could be on disk.

joostdevries··on DSL processing in Scala
The Parboiled2 framework is often used for building parsers.
joostdevries··on DSL processing in Scala
I use the sbt command ~testQuick. That continuously recompiles scala files as soon as they're saved and reruns only the unittest(s) that are affected by the change.

For running my app I use the revolver plugin that offers the same thing: as soon as I save a file it is compiled and the app is restarted. When I use the Play framework this is supported out of the box: I save my file and refresh in the browser and see the changes.

This works very well.

joostdevries··on Renaming the Company
I like the name as well. Apart from the meaning of the name to engineers it's easy to remember because its constituent parts are very common English words.

I can imagine though that if you want to offer reactive systems with coast-to-coast backpressure you perhaps want to support parts of the system being in, say, Javascript as well.

I'd seriously consider keeping the name and just treating it no longer as a word but purely as a name. I.e. something which dictionary definition is not constraining to the company mission.

joostdevries··on Ask HN: Is the semantic web still a thing?
The way I see it that technology has been on the cusp of being succesful for a long time.

What the reasons are is largely a matter of opinion. In my opinion there are several possible reasons: - the 'semantic' idea of 'strong' modeling of the world lost out to a competing approach that uses probabilistic models. The latter models don't require coordinated effort by humans and thus scale better. - the semantic approach also suffered from academicians myopically going over the same millimeters of theory for decades. And losing sight of matters of practicality. - The fundamentals of the semantic technology seem rather brittle to me. With that I mean that a tiny difference in the reasoning axioms can make the whole reasoning intractable. That might be anti-tethical to the 'tinkering until it works' approach that software engineers often use. - Somehow a broady applicable killer application didn't turn up. But that's a result as much as it might be a reason.

There's still use for the technology though. If you need to unify data that follows subtly different datamodels I'd be hard pressed to think of an alternative. Which makes me wonder whether intelligence agencies use the technology. F.i. I remember a reference given by Oracle of the US Geospatial Intelligence Agency using their quad store. The new moniker 'linked data' emphasises this aspect. Government agencies do struggle with having to relate data that are obviously related but conceptually, legally subtly different. And they do spend quite some attention on linked data. They seem to stay mostly within the RDFS realm and do not stray into more interesting OWL applications. But even in government circles I get a whiff of the solution-looking-for-a-problem vibe that hounded the semantic web for so long.

joostdevries··on Why Has Google Forsaken MetaFilter?
Another example would be how google did sunset Google Reader. That also struck me as a product that was aimed at people who are rather similar to Google employees.
joostdevries··on Why Has Google Forsaken MetaFilter?
I was quoting the article...
joostdevries··on Why Has Google Forsaken MetaFilter?
"Searching for “most amazing woman ever” on Bing will give you MetaFilter’s helpful “Who is the most amazing woman who ever lived” as the third result. (Answers, by the way, included British spy and French Resistance leader Nancy Wake, world’s first programmer Ada Lovelace, slave rescuer and activist Harriet Tubman, and Chinese pirate Ching Shih.) Google puts it at the bottom of the second page of results, in 19th place. Google’s top result? A list of “the 100 most beautiful women ever.” "

That made me wonder whether Google has shifted its products from being the kind of thing that their own employee corps would enjoy to things for the general public. I personally f.i. enjoyed the from: to: keywords in Google Maps search. That feature disappeared and probably the majority of users wouldn't use those anyway. Personally I scorn at a search result of the '100 most beautiful women'. But in the large population it will probably lead to a much higher click through. So I wonder if Google Search was oriented towards the smart crowd niche and that they changed focus towards the common and the populous. To put it differently: a shift from an emphasis in information as high value search result towards including entertainment, gossip etc. High brow to low brow.

joostdevries··on State of MetaFilter
Yes, Jessamyn has an amazing knack for handling users. That sounds rather pedestrian but she makes it into an intellectual art. I hope she's making a positive move.

Also the whole site is just so personable. I hope it stays around.

joostdevries··on Appsdeck, EU-based PaaS, is now in open beta
Clients I speak to are interested in cloud solutions. But as soon as information security comes up anything related to America (ownership as well) is a no go. So I'd think that there's a pent up need for reputable EU PaaS providers.
joostdevries··on Appsdeck, EU-based PaaS, is now in open beta
Clever Cloud is a French PaaS provider. I have no experience with them.
joostdevries··on Global heatmap of cycling and running routes
I was puzzled by that abrupt change at the border as well. It could be market penetration. Maybe bike infrastructure like the bike knooppuntnetwerk plays a role as well. http://www.nederlandfietsland.nl/knooppuntroutes/overzicht-k... Although dedicated bike lanes fall of much more gradually at the border f.i. https://www.google.de/maps/@51.6623341,6.998291,9z/data=!5m1... As a Dutchman I never realised how unique this dense network of dedicated bike lanes and route signs is. Until I met some Canadian bike head expats who couldn't stop raving about it. It seems that if you're into touring on bike and getting around by bike the Low Countries are without equal.
joostdevries··on Scala 2.11.0 Release Notes
Shouldn't that go hand in hand? The generated unapply method will involve a tuple of same arity I believe.
joostdevries··on Show HN: Try Scala in your browser
I'd recommend Cay Horstmanns 'Scala for the Impatient'.
joostdevries··on Work Hard You'll Get There Eventually (hint: no you won't)
Devoting energy solely to building a good impression with your boss is a high risk strategy when bosses and companies aren't very loyal. Building an outside reputation as well using work on open source f.i. hedges that risk and increases your negotiation power.
← PreviousPage 3 of 4Next →