Got a new small keyboard
Got a new small keyboard
As I posted a while ago, from time to time, I was working on the MacVim. My goal was to separate a Vim-TextView-Framework out of MacVim such that other Apps can use it. Now, I’ve got a code base https://github.com/qvacua/macvim which can serve as a starting point for a real framework. It has got a two separte targets:
There are yet many rough edges. It will need much more work to become a real framework though…
The fact that the discipline of economics hasn’t helped us improve our predictive abilities suggests it is still far from being a science, and may never be. Still, the misperceptions persist. A student who graduates with a degree in economics leaves college with a bachelor of science, but possesses nothing so firm as the student of the real world processes of chemistry or even agriculture.
An effective chair of the central bank will be one who understands that economics is not yet a science and may never be. At this point it is a craft, to be executed with wisdom, not algorithms, in the design and management of institutions. […]
Wir leben in einer besonders merkwürdigen Zeit. Wir finden mit Erstaunen, dass der Fortschritt ein Bündnis mit der Barbarei geschlossen hat. […]
JM and I recently visited Stockholm. The travel went flawlessly and the weather was fantastic. We wandered around the Gamla stan (the old city). We also visited to the modern art museum and to the museum for design and architecture. At some point, we went into a Coop supermarket. Guess what we’ve found: Come on!!! Seriously, you call this not-red-and-strange-looking-stuff Kimchi? OTL
Chrome is my default browser on all of my devices. On iOS though, there are few things that really bug me.
Look at the following two screenshots: I get this state when I close the last tab; what is the purpose of this state? Should I look at the Chrome icon for one second before I have to press the “New Tab” button in order to get going? It’s just useless. Safari does a better job and opens a new tab immediately after the last tab is closed. In addition, the position of the hamburger button is different when there are tabs present:
The position of the close button changes when the device is in portrait or in landscape mode: Right, left, what now? This is really annoying…
As I was reading the chapter 9 of Open Society and Its Enemies by K. R. Popper, I became aware of the striking resemblence between his treatise of social engineering and agile methodologies.
Popper criticizes Plato’s demand for a totalitarian and racialist state. In doing so, he discusses Plato’s version of social engineering which he calls the Utopian engineering:
These principles, if applied to the realm of political activity, demand that we must determine our ultimate political aim, or the Ideal State, before taking any practical action. Only when this ultimate aim is determined, […] only when we are in possession of something like a blueprint of the society at which we aim, only then can we begin to consider the best ways and means for its realization, and to draw up a plan for practical action. […] It is convincing and attractive.
A bluprint! This is a bona fide waterfall model: First plan a multi-year (IT) project in every detail. Then, you just execute the blueprint. It is indeed a convincing and attractive model, but deceiving. The big blueprint gives you a false sense of safety. It does not work in most cases.
[…] the Utopian attempt to realize an ideal state, using a blueprint of society as a whole, is one which demands a strong centralized rule of a few, and which therefore is likely to lead to a dictatorship.
This is also typical for the waterfall model: Developers are not sufficiently involved in architecture and design despite of the fact it is them who actually build the software.
He proposes a different “methodologically sound” approach: The piecemeal engineering:
The politician who adopts this method may or may not have a blueprint of society before his mind, he may or may not hope that mankind will one day realize an ideal state, and achieve happiness and perfection on earth. But he will be aware that perfection, if at all attainable, is far distant, and that every generation of men, and therefore also the living, have a claim; […] The piecemeal engineer will, accordingly, adopt the method of searching for, and fighting against, the greatest and most urgent evils of society, rather than searching for, and fighting for, its greatest ultimate good.
Iterations (or Sprints)! Be able to adapt to the current situation fast. Proceed step by step without necessarily having laid out a complete plan. Also, you should implement features first that have the most business value.
In favour of his method, the piecemeal engineer can claim that a systematic fight against suffering and injustice and war is more likely to be supported by the approval and agreement of a great number of people than the fight for the establishment of some ideal.
In agile process like Scrum this directly translates to Sprint Plannings: The developers—not nobody else—commit to user stories in the first planning. In the second planning they reach an agreement on the architecture and the design.
They are blueprints for single institutions, for health and unemployed insurance, for instance, or arbitration courts, or anti-depression budgeting, or educational reform. If they go wrong, the damage is not very great, and a re-adjustment not very difficult. They are less risky,
Reasonably sized and well formulated user stories are very important ingredients for success.
But the piecemeal method permits repeated experiments and continuous readjustments.
Continous improvement; Kaizen! This is agile at its best!
To conclude: The chapter in question, “Aestheticism, Perfectionism, Utopianism”, is really to be recommended; especially for agile methodologists. Just replace “Utopian engineering” and “piecemeal engineering” by “waterfall model” and “agile methods”, respectively and you will get a beautifully written endorsement for agile practices.
Few days ago, I started to work on MacVim. My goal is to factor out the Vim text view such that you can use VimTextView in any Cocoa App. Let’s see how far I can get.
Negt: Dass wir nicht zur Kenntnis nehmen, dass diese Produktionskapazität nicht mehr das Problem ist, sondern die Verteilungsgerechtigkeit das Problem ist; die Verteilung des Produzierten. Wenn ich höre in den Nachrichten, dass Winterkorn nur noch 12 Millionen bekommt, da kommen einem ja die Tränen.
Wiebicke: Der VW-Chef.
Negt: VW-Chef… Da kommen einem ja die Tränen. Statt 20 nimmt er jetzt, verzichtet er also großzügig. Das kann doch nicht unter normalen Bedingungen als Gewinn von Gerechtigkeit angesehen werden, sondern da macht sich ein System über die Menschen lustig.
Das philosophische Radio von WDR 5