I just read an interesting article with the title We’re in a brave, new post open source world. The article goes into the evolution of Open Source movement and the numerous licensing policies. On particularly notable phrase I saw read as follows:
…if you use someone else’s code revision from Stack Overflow, you would have to add a comment in your code that attributes the code to them.
What this means is that, if a developer uses a snippet of code taken from StackOverflow, and fail to add such an attribution, then technically the project might be in breach of StackOverflow license. I am curious how many organisations actually check this.
I just read a nice essay by Richard Stallman with the title Why Open Source Misses the Point of Free Software – GNU Project – Free Software Foundation. A chosen quote from this essay poses perfectly the problem
Open source is a development methodology; free software is a social movement.
Most people probably aren’t even aware of this difference. I never understood why and how the term open source came to be applied to hardware, government and many other areas when in fact even the English language doesn’t see any notion of source in such contexts.
The article I refer to is concerned about correct definitions, I want to look at some of the misunderstandings.
There is an angle to this discussion, a lot of people and organisations look to Open Source Software (OSS) in search for cheap (but not cheerful) opportunities to solve their problems. You can’t blame them for it, but this can raise several issues. I will ignore any moral aspects for now, and focus on a few practical implications.
Some individuals or organisations release their work as Open Source with the explicit intention to invite others to contribute to it. This is often an acknowledgement that one’s work can be bettered and perfected if others would gain access and be allowed to contribute.
By releasing a work as open source, there is no implicit or explicit guarantee of quality or defect. It just means use it at your own risks, your contribution would be appreciated if only in terms of signalling any defects found, or improvements that you might have been able to add to it.
FOSS doesn’t opposed nor condone gainful use. Statistically however, there exist far fewer people and organisations able to contribute than those who actually use OSS. This is well understood and accepted by most. However, it is astonishing to see some people throwing a tantrum and launching on diatribes when they get frustrated by some open source software. This is just plain crazy behaviour, they not only miss the point and are showing preposterous entitlement that deserves to be frowned at.
Increasingly, many organisations are using OSS as a mean for attracting and retaining talent. This is an instance that stretches the notions of free and open in an interesting way, a subtle form of free promotion and marketing.
I really wanted to read it but I only had 15 minutes for it. So I bookmarked it and tried to skip past, but curiosity got the better of me. I followed the link, scrolled all the way to the bottom and spotted this bit:
Way too long; didn’t read
That was a heading of the super short summary. So I read that part, and it was insightful. If and when I managed to find time again, I might read the whole thing. But for today, that section of the article makes up my recommended reading.
A chosen excerpt from the highly educative article about BitCoin.
Bitcoin has entered exceptionally dangerous waters. Previous crises, like the bankruptcy of Mt Gox, were all to do with the services and companies that sprung up around the ecosystem. But this one is different: it is a crisis of the core system, the block chain itself. More fundamentally, it is a crisis that reflects deep philosophical differences in how people view the world: either as one that should be ruled by a “consensus of experts”, or through ordinary people picking whatever policies make sense to t
Given that the majority of security annoyances stem from antiquated design considerations, considering the progress made in computing, affordable computing power, this is probably how Operating Systems should now be built and delivered.
Qubes is a security-oriented, open-source operating system for personal computers.
I saw this article over the week-end. I’ve used the service a lot without really noticing it. Via the attached post, they announce that the site is to close down, taking down the mobile apps in the process. It’s sad to see them go. The reasons invoked are familiar enough, that’s how it goes. I was never clear what their business model was. I wonder if Flipboard might be next. We’ll see.
One small detail I noticed, which will likely bite many people, when Prismatic goes down then articles shared via links generated by Prismatic apps and web sites will likely be broken too. The culprit is, url shorterner. I’ve quickly converted the ones that I’d saved in my notebook, but I’m sure I’ve missed some. It’s not easy to find all of them. This is one of the problems with url shorteners, they are not proper permalinks.
I waited eagerly on the launch of Apple Music. When it finally did, I signed up for the trial and started using it. It was a let down. Yet again, I wasn’t getting the music listening experience I’ve been longing for since my childhood. Worse, I had lost some of the features I already had. This was a surprise to me, given that Apple had recently joined forces with some successful music professionals.
As a young boy, I learned to appreciate the sound of the vinyl discs that played in our house. The sounds were so crisp that they felt even better than listening to a real live performance. I loved touching the sleeves, admiring the beautiful art printed on them, sometime the lyrics other time some back stories. When I liked a track, I would spend hours listening to it repeatedly on a loop, each time trying to focus on just one instrument in order to appreciate how that was played. I would often fantasise that I could hear the players responding to each other with their instruments.
I didn’t listen to music and do something else. I was either listening to music, hence dropped everything else. Or the other way around, in which case I would stop the music from playing or try to block it. I couldn’t tolerate the slightest unrelated noise disturbing my listening experience. This was frustrating for someone who lived in a compound with lots of people around. I could do this for many hours.
If what I considered to be great music were playing, I couldn’t understand why anyone would want to chatter and miss out of the delicate sounds. In fact, I think this trait was shared by a lot of people in Mali, where I grew up. You would often see young people sitting around quietly listening to a record, nobody making a sound.
I didn’t understand anything about the pop music culture and the media, I didn’t care what anyone said, I only cared about what I could listen to and touch. In this manner, I grew my own mental model of music, that’s how I would develop an eclectic taste as I could somehow identify signature sounds across multiple recordings from different artists. Without knowing it, I was also growing an understanding of the artists, I could tell if a recording was the original or not, and I was even sometimes sure I could feel the artists emotions through their voice or the way they played. I would envision a recording as a chain of mountains and valleys, I could hear sadness and joy alternating in an artist voice on one song. One time, a Bob Marley music took me to such a roller coaster that I kept talking about it all week. I didn’t even understand the words properly because my English wasn’t good enough.
This was my music listening experience.
As I started making my own money, my Saturday afternoon were often spent in record shops looking for the next exciting album. I would always open up the booklets and whatever the cover was, read up on everything I could, as part of the selection process. I could never tire of this.
As we migrated to all streaming and downloading experience, my lifestyle also evolved and I lost the habit of going to record shops. But I still expected that somehow, the leaders like Apple would eventually bring us the kind of listening experience I was enjoying as a boy. As I listen to a track, I want to be able to navigate to the lyrics (if available), the backstories, the album artwork, see the track listing as it was originally produced, see any collaborations that the score writer or the artists might also have made. With digital, this should have been a snap. Sadly, this never materialised.
What is noticeable is that music listening experience is constantly being dumbed down, the great story telling of yesteryear’s album production is getting lost. Somehow as if none of that mattered. It’s a shame because digital could have made the experience even richer, but it isn’t. If I would make a parallel with painting, you wouldn’t dream of removing any layers from a Van Gogh or Matisse piece of work. Arguably music production itself is also degrading in quality. Pick a Jeff Beck, Radiohead or Kendrick Lamar record however, you’d notice a richness in sound and production. The CDs often come with nice artwork, lyrics. Björk’s Biophilia album is an encouraging experiment, it takes the music experience to an entirely new level. This won’t be a definite trend anytime soon. In the mean time, I do feel that some intermediate steps would be more portable than going down the mobile App route.
I would have thought, if you wanted to sell more music then it’s actually a good thing to teach people how to appreciate music. This isn’t what I am seeing. Instead we’re learning to skim on everything, take things for granted and gloss over effort, all in the rush to show a ‘buy now’ button. If I were an artist I would be livid and would want to take control over the whole thing, down to managing my fan communities, to be sure they can appreciate my work unadulterated.
PS: I am not a music professional. I know nothing about the correct terminology and concepts. I am only telling it as I experienced it.
Then I tried something else. I imagined the WSJ article didn’t exist, as if I never heard about it, and went back to reading Amazon’s Our Leadership Principle article, as an outsider hearing about it for the first time. It clearly demands a highly competitive spirit, a strong leadership and ambitious work ethos. Strong leadership, power with responsibility in teams hands. There is nothing evil or cynical by design here.
However, such challenging ethos combined with a lightweight supervision could indeed take surprising if not unexpected turns. It immediately reminded me Philip Zimbardo’s Standord prison experiment. Amazon might or might not be experimenting, but it would seem that good governance did not notice that some high impact behaviour was at play.
If you read WSJ article again, the various quotes of managers seem to point to highly logical communication, often with little or no empathy. A lot of IQ but perhaps less show of EQ. It’s not surprising that a high profile company such as Amazon would be chided for ignoring EQ in their extensive metrics. If that were intentional, then it would be a design problem.
So, it seems that, whether intentional or not, governance at Amazon did not include social accountability of the kinds that modern society expects. This has been an interesting learning chance, hopefully for them too.
Can and should an organisation demand high IQ without a balancing level of EQ, from its leaders?
Martin Fowler is a brilliant technologist. Needless to say. This post is going to be a recap of some of my tweets on the subject of micro-services (or “microservices” as I see commonly being written). I would have quoted a bunch of other people instead, had I seen many. But that wasn’t the case, so I’ve got to quote myself then.
The first article I read about micro-services was on InfoQ.
Some time later, I saw a blog post by Martin Fowler’s article on the same subject. Then I immediately thought, as is typically the case, that the developer community was going to go crazy about the concept. I had the following reaction.
I love tech, soon we will have Microservice Consulting Firms, Books, Training Centers, Ninjas, Gurus, … http://t.co/pSprHWInt0
Naturally I value the thoughts and the content of the article. But I was merely concerned that many would jump straight in and make a total mess of a rather valuable insight. The topic gained popularity quite quickly, faster than I had expected though I couldn’t say I was surprised either. Reputed analysts picked up on this.
Technology Forecast: Rethinking integration: Microservices: The resurgence of SOA principles: PwC http://t.co/CzYqy1dhJv
Time going by didn’t assuage my concerns, rather, I was only getting more and more confirmations. I thought that perhaps nobody is going to adjust perceptions and expectations until disaster stories would abound. I tweeted my thought on that.
I've heard so much about microservice in so many inopportune contexts that I expect it to reach SOA's bad press faster than SOA did.
And, to keep this relatively short, here we are, somewhat full circle, with Martin Fowler inviting for some sanity. Martin opens his latest blog post
As I hear stories about teams using a microservices architecture, I’ve noticed a common pattern.
Almost all the successful microservice stories have started with a monolith that got too big and was broken up
Almost all the cases where I’ve heard of a system that was built as a microservice system from scratch, it has ended up in serious trouble.
I should have made this a series, another one on OS X annoyances. I now frequently experience several apps freezing for no apparent reason. Yet again, a new behaviour that until now, 8 years after switching from Windows to Mac, I didn’t expect to experience. Standard apps like Finder.app, Preview.app, or Mail.app or Safari.app, would just stop responding.
Normally, if an app stops responding then this will show in Console.app. In these instances, Console.app was showing a clean health situation, nothing is stuck. But as a user, I could type any number of keys and move the mouse around, Finder.app doesn’t respond, Spotlight doesn’t instantly find any answers – whereas it normally does as you type characters. I use Spotlight to launch apps, so when it doesn’t respond then that interrupts my work flow. Then I immediately turned to Alfred.app, and surely enough Alfred was working fine and could carry out any task I usually throw at it. What the heck was going on now?
I started to guess a deadlock situation, invisible to the regular app monitor. I then looked for what might be hogging up resources and saw something interesting.
Two processes are occupying 130% of the CPU, effectively 2 out of 4 CPUs on my machine are fully utilised. I have 2 more CPUs that can potentially do work for me. And they do try, only soon to get stuck. ‘Dropbox’ app is easy to recognise, the second hungry process ‘mds‘ is actually the indexer of Spotlight.
Dropbox was clearly working hard on synchronising files to the Cloud, but what was mds doing? I did recently move around a large number of files, this may have invalidated Spotlight index, and it is trying to rebuild it. All fine, but I always thought that only happened when the machine was not being used. Furthermore, I expected that Spotlight indexer wouldn’t make the UI unresponsive. I was wrong in both cases.
I found out that when Spotlight get into such an aggressive reindexing, Finder.app also stops being responsive. This has some consequences: some apps appear to work fine, I can launch other apps and they may be snappy and all, as long as they don’t go anywhere near Finder.app. The overall impression is that the Mac is unstable without any app appearing to be hanging. How is this possible? Then I remembered what I always chided Windows, the fact that some tasks were unnecessarily channelled via UI layer stack, making them sluggish and prone to get stuck. That’s the same behaviour I was now observing.
To confirm my hypothesis, as soon as I killed the Spotlight indexer, Finder.app, Preview.app an others immediately became responsive again. I repeated the experiment many times over before writing this post.
I found another sure way to get Preview.app stuck, any attempt to rename a file, move it to a new location, or add tags to it directly from Preview.app menu, will cause both Preview.app and Finder.app to become unresponsive for a long time.
My conclusion, from here, was that, some of the standard apps that ship with OS X Yosemite contain a certain amount of code that are very old or simply badly designed. Such code, typically the work of UI framework enthusiasts or design principles of another era, would traverse a UI layer stack for tasks like disk and network access, although they shouldn’t have to.
Most users would typically get frustrated and decide that OS X is just bad software, others might think about rebuilding their machine. I just looked briefly into it, didn’t bother digging up too much into the SDKs, APIs and other kernel debugging tricks to get to the true bottom of it.