I had some code for the Servant type-level HTTP API library in Haskell that does type-correct property testing on arbitrary web apis without user input, then Servant changed their type structure from a basic list-based…
I used sqlite as a backend for scraping 160 million websites a day. It works extraordinarily well if you hold it right - in my case, that meant devoting a database file to each thread. (Arguably in this context, it's…
Me too. Got its quirks (I wish it noticed stack-relevant changes and ran intero-restart itself) but I find it really valuable, especially with Anthony Cowley's suggestion-handling stuff.
I've implemented this. It isn't too bad up to a certain point. You have to be a bit careful about your filesystem/layout of files, lots of filesystems don't particularly like it when you have a few hundred million files…
I have a crawler downloading 160 million websites a day, almost all in Haskell. It is a much more practical language than the alternatives.
yeah - worked on it a bit with Ollie Charles. https://github.com/ocharles/Elasticsearch it's not very principled, tbh. uses error etc rather than proper sum types for returning errors.
as a contributor to the other ElasticSearch client - kudos. This is much nicer than ours in many ways :)
yes, I probably should have mentioned the other 90% of the project, hey :)
This is true :) been a great tool to write a spider in, fast native code, a strict type system and very cheap threads has made it much faster than it otherwise would have been. ZeroMQ has also been a great help in…
What benefit does that have over what's actually there?
Row polymorphism has something to say about this, doesn't it? Coming from Haskell, I'm still finding concatenative programming hard to handle.
well, let's look. map f (h:t) = f h:map f t map f [] = [] member x (h:t) = x == h || member x t member _ [] = False I think the only difference is that you can't match for equality directly in the pattern.
My startup involved custom hardware and realtime messaging. I still would have been better off in the early stages writing it in Ruby.
ha. I didn't think that at all when I was writing it, but I can see how it's applicable. I'll be sure to analyse that more explicitly next time I write a presentation.
not caremad, just clarifying. I'm as baffled as you are.
It really depends on the type of risk. My assertion is that most startups have most of their risk in the market bucket rather than the technical bucket. If you can move some risk from the market bucket to the technical…
A lot of context is lost in a slideshow. I am very much a fan of the experience of developing in Haskell. My problem was tangential stuff like Cabal & the difficulty of operationalising Haskell. It's the reason I…
It wasn't really intended to make much sense by itself. I find if I make slides that stand alone, the audience reads the slides and ignores me. I put the slides up as a courtesy to the people in the audience. There was…
Copy-on-write.
http://jacquesmattheij.com/The+Starter+the+Architect+the+Deb... seems relevant here. I often have the same problem - once the crazy technical stuff is done, I lose interest in the mundane details of packaging, finish,…
good idea - i might even manage a complete and coherent sentence.
I'm interested in this for ninjablocks, too - I think we're currently bundling a small number of resources (SMSes etc) with each account, but then perhaps more fine-grained tracking.
Privacy is a legitimate concern, but there are useful things you can do that you might feel comfortable sharing with our servers. Zero-information computing is really hard, and we didn't feel it was worth the time it'd…
It's coming.
no, it's a beaglebone and an arduino. we looked at the raspberry pi, but availability wasn't great.
I had some code for the Servant type-level HTTP API library in Haskell that does type-correct property testing on arbitrary web apis without user input, then Servant changed their type structure from a basic list-based…
I used sqlite as a backend for scraping 160 million websites a day. It works extraordinarily well if you hold it right - in my case, that meant devoting a database file to each thread. (Arguably in this context, it's…
Me too. Got its quirks (I wish it noticed stack-relevant changes and ran intero-restart itself) but I find it really valuable, especially with Anthony Cowley's suggestion-handling stuff.
I've implemented this. It isn't too bad up to a certain point. You have to be a bit careful about your filesystem/layout of files, lots of filesystems don't particularly like it when you have a few hundred million files…
I have a crawler downloading 160 million websites a day, almost all in Haskell. It is a much more practical language than the alternatives.
yeah - worked on it a bit with Ollie Charles. https://github.com/ocharles/Elasticsearch it's not very principled, tbh. uses error etc rather than proper sum types for returning errors.
as a contributor to the other ElasticSearch client - kudos. This is much nicer than ours in many ways :)
yes, I probably should have mentioned the other 90% of the project, hey :)
This is true :) been a great tool to write a spider in, fast native code, a strict type system and very cheap threads has made it much faster than it otherwise would have been. ZeroMQ has also been a great help in…
What benefit does that have over what's actually there?
Row polymorphism has something to say about this, doesn't it? Coming from Haskell, I'm still finding concatenative programming hard to handle.
well, let's look. map f (h:t) = f h:map f t map f [] = [] member x (h:t) = x == h || member x t member _ [] = False I think the only difference is that you can't match for equality directly in the pattern.
My startup involved custom hardware and realtime messaging. I still would have been better off in the early stages writing it in Ruby.
ha. I didn't think that at all when I was writing it, but I can see how it's applicable. I'll be sure to analyse that more explicitly next time I write a presentation.
not caremad, just clarifying. I'm as baffled as you are.
It really depends on the type of risk. My assertion is that most startups have most of their risk in the market bucket rather than the technical bucket. If you can move some risk from the market bucket to the technical…
A lot of context is lost in a slideshow. I am very much a fan of the experience of developing in Haskell. My problem was tangential stuff like Cabal & the difficulty of operationalising Haskell. It's the reason I…
It wasn't really intended to make much sense by itself. I find if I make slides that stand alone, the audience reads the slides and ignores me. I put the slides up as a courtesy to the people in the audience. There was…
Copy-on-write.
http://jacquesmattheij.com/The+Starter+the+Architect+the+Deb... seems relevant here. I often have the same problem - once the crazy technical stuff is done, I lose interest in the mundane details of packaging, finish,…
good idea - i might even manage a complete and coherent sentence.
I'm interested in this for ninjablocks, too - I think we're currently bundling a small number of resources (SMSes etc) with each account, but then perhaps more fine-grained tracking.
Privacy is a legitimate concern, but there are useful things you can do that you might feel comfortable sharing with our servers. Zero-information computing is really hard, and we didn't feel it was worth the time it'd…
It's coming.
no, it's a beaglebone and an arduino. we looked at the raspberry pi, but availability wasn't great.