The simple minded software developers solution would be to radically cut out the cruft (complex laws and tax systems) and implement a simplified version, that would be harder to game and easier to debug.
1,444 karma · joined August 17, 2010
hnchat.com:N1jRS58LGuGVd6IotNBO
The simple minded software developers solution would be to radically cut out the cruft (complex laws and tax systems) and implement a simplified version, that would be harder to game and easier to debug.
Yes, I experienced this and it seems to be a real problem, for various reasons: if it does not look complicated, investors won't like it, won't buy it; if it is too simple to use, people will think I am dumb. If the setup is too simple, people will think I am incompetent, etc.
Simplicity is a prerequisite for reliability, not a nice-to-have.
When I read articles and books from scholars from the 19th and beginning 20th century, I'm often surprised how broad their horizons were and how cautious in their thinking. It's always a pleasure to read.
> Since SSRN is owned by academics, I expect it will continue offering similar services for the foreseeable future.
BTW: Did SSRN had a official method of downloading their metadata?
Is the code completely open source? Could I setup infinit.sh inside my own infrastructure?
A customer might have a lofty web-scale vision, the first version is built with all scaling and no maintenance in mind. You are then faced with a decision: carry along the visionary nightmare and get almost no real work done, because the system itself is in the way, or rewrite the system with a fresh, minimal approach, focusing on a valuable target.
The point being: Software requirements evolve and sometimes, writing a first version of the software is the spec itself. Just as with specs, you can try to scavenge all good things from the previous version for the next one - and actually getting better over time, despite being in a rewrite mode.
Other wonderful projects in this category would be homebrew[1], wiki*, OSM, ...
> that could be used to get the kind of data you need.
Cool. Would you be interested in sharing or exchanging data?
I can think of many other use cases as well, where a product needs to built from larger, but very selected set of raw input or pages.
BTW: Thanks for Hackday Paris 2011! Loved that event and venue :)
It would be even better, if the web would be treated, at least for parts, as a digital library and non-profit organizations would recognize the value of access to such a resource and provide it (just as maintenance for roads or public schools).
I believe, Flink tried to focus on query language and optimization, as you probably would in a database settings. In contrast, Spark is sometimes described as a batch processing system, which provides a real-time experience by intelligently partitioning the work.
Take interfaces. In Java you might start with them. In Go - in the best case - they emerge, when it's time for them. Java has more mature tooling, but then, I cannot remember gathering runtime insights with Java quicker than with Go pprof[1].
Java is rock solid and more and more libraries are written in lightweight and clean way. Go has more momentum and also a growing number of curious users, who explore the language in creative ways[2].
[1] Google image search for "go pprof": https://goo.gl/6l7t1b
[2] Just discovered this amazing guy recently, https://github.com/fogleman/ln, https://github.com/fogleman/nes
> Have you ever had to kill a man, Max? Have you? To pull that trigger, you have to be sure. Yes, you investigate, analyze, assess, target. And then you have to look him in the eye. And you make the call. And all the drones, bugs, cameras, transcripts, all the surveillance in the world can't tell you what to do next.
On the other hand: When I hear that many scientists use Excel for complicated processing chains and are sometimes themselves hardly able to reproduce anything a few month after the paper was published, I believe we hit some new low point in scientific activity. Combined with an infrastructure focused on research impact and number of papers published, this is really a sad situation.
After a presentation on Luigi in a Python User Group, we had a lively discussion about certain features. One issue that came up was the fact, that downstream tasks are not necessarily recomputed, once you change something in the code. For that to happen, you would have to keep track of the source code as well. Similarities with Nix came up, where a change in code leads to a different ID, so all changes can be tracked.
Shameless plug: When I started using Luigi, I missed some auto-generated filename feature for task outputs, so I wrote a utility library for that (and a few other things): https://git.io/vg4D0
I write and ship Go and Python code every day and I found that distribution is a great overall benefit - one, that some developers for some reason seem to ignore.
It's not just convenient for me, but for various other parts of a project as well: less moving parts is welcomed by ops, fast iterations help to meet the requirements. Overall a very positive impact for a reasonable price tag: larger binaries and recompilation overhead, when a critical library that is used needs a fix.