The Future of the Internet…. and the Black Pearl of Freedom

// April 18th, 2012 // Comments Off on The Future of the Internet…. and the Black Pearl of Freedom // Apple, iknode, microsoft, open source

Back when I was in college I was a Linux buff. I had 3 machines and all of them had different Linux distros. I contributed to Gnome and gave free copies of debian and redhat to everybody I knew. As I grew up, I noticed how Microsoft started to become more open, and started paying more attention to its products. Microsoft started softening to open source. I was actually relieved, because everything was not so Black and white, like I thought. Now, Microsoft is loosing grounds, and Apple is taking over. Apple is and has been a lot more closed than anybody in the industry’s history, not only on source code, but also on tactics.

I feel like we are going back in time. Instead of Microsoft and Google taking Open Source to the top, Apple, is taking everything back 20 years. It feels like all the advancement in the industry is lost. Microsoft is definitely loosing relevance, but Google might still be able to pull it off.

I am a big fan of Larry Page, but mostly of Sergey Brin. Their vision makes sense. It is a strategy of business with freedom. They might not be as ‘not-evil’ as they used to be, but the ideals are still there.

Sergey Brin did an interview where he spoke about the open web. How the current ecosystem is becoming too closed. Companies like Google, Yahoo, eBay, and Amazon would not be able to survive in this environment. Even thought Sergey mentions governments as part of the problem, I believe the problem is concentrated on the companies inside the industry. It has become a monopoly-friendly ecosystem. The industry and the government have not been able to set protections for another Microsoft to rise. And the problem is, it already has, and this time is going to be worse. It is Apple.

Nobody notices what is going on in the industry right now. How can a closed ecosystem exist in this era, where open source, freedom and open apis coexist ? It makes me think that maybe freedom is not that important. Comments like this one, make me think that even people I respect are blind to the situation.

The comment is missing the whole point. It is open because NOT ONLY Google can search through it and sell ads against it, in fact is not the only one. It is not about how Google dominates the search market. Because the biggest difference is that Google can be beaten any time by a worthy competitor, Apple can’t. Apple created its own ecosystem, effectively locking out competition. Only Apple can decide what happens in the App Store and in their devices. Google, actually provides a service, which works in the open. Google hasn’t been beaten, not because is the only one that can search through content and sell ads against it, it is because Google does it better.

I believe it is stupid how many people think Apple products are perfect, and lack the understanding that even thought they are quality products, they are on par with the industry. We have been hearing about how Macs are invulnerable to viruses. That idea is not only wrong, is naive. Macs are more vulnerable than Windows. Microsoft has been really good lately at securing the operating system. It is still not perfect but it is way better than Macs.

It seems Apple solution to security is lockdown. They seem to be taking MacOS to a model just like iOS, where only apps from the App store can be installed. They believe that the way to security is removal of freedom.

Segey Brin added more comments this morning through his Google+ account. He focuses more on governments, and leaves Apple and Facebook out of the picture. And even thought I agree with Sergey that governments have too much power now over the internet, I still think the main threat comes from companies like Apple and Facebook.

The whole idea of Freedom is what brought me to create iKnode. I call it my Black Pearl. When we started we saw all these companies like Parse, Kinvey and Stackmob focusing on mobile, specially iOS. And after the market analysis, it does makes sense. But we strongly believe in the Web and the future of it for organizations and software developers; so we put all of our efforts in the Web. We still consider mobile as part of our business model, but the Web is our primary focus.

I believe in the power of freedom, and I believe it is in the web. It is not about opening your source code, it is about allowing innovation to happen freely, and to be able to create an ecosystem where my daughter can be able  to create the next Google.

Considerations when Storing C# code in JSON

// April 14th, 2012 // 2 Comments » // .net, emacs, iknode

iKnode‘s main database has always been Postgresql, but recently we have been using MongoDB more and more. Currently we store C# code in Postgresql, which is painless, since we can just grab the input directly from the Web editor and into the the database unmodified. With MongoDb, this process is not as easy because MongoDB depends on a JSON-like format.

MongoDB stores data using BSON, which is a superset of JSON. While testing, we needed to set the default Database state to run our tests, we encountered a couple of problems while serializing C# code into JSON.

We followed these considerations to transform C# code so that it could be embedded in a JSON string:

  • Convert Tabs to Spaces. (In Emacs you can do this with the M-x untabify command)
  • Escape carrier returns (\n -> \\n) (In emacs yo ucan do this by replacing C-qj with \\n)
  • Escape double qoutes (” -> \”).

The next things we did was validate the resulting JSON. You can do this with a web JSON Formatter like CuriousConcept’s JSON Formatter. We tried others like JSONLint, but the only one that gave us a detailed error description was CuriousConcept’s JSON Formatter.

In the end we now have C# code in a JSON store. Hope this helps anyone trying to do store c-like type code.

iKnode and SOPA

// January 22nd, 2012 // Comments Off on iKnode and SOPA // iknode

After all the SOPA/PIPA protest, we are happy to see that our efforts did work effectively. SOPA is now dead. We at iKnode where really worried about the progress of the bill.

We just posted the iKnode’s team position on the SOPA outcome, you can read about it here.

It is good to see we can still make a difference.

Fly with the new Twitter

// December 9th, 2011 // Comments Off on Fly with the new Twitter // iknode

This morning I heard the news about the new Twitter UI, and got excited. I rushed to the new site created to explain the changes, and began reading. The design and effort put into this site is amazing. And it shows that this is not just another UI updated. This is a model change.This became obvious after I finished reading.

I enjoy Tweeter very much. I can’t say I fully understand their current business model (if there is one), but it is a fun add-on in my life. With these new changes, I see a Business Model and also a service that could become the center of focus not only an addition. This new path clashes in direct competition with Google+ (primarily) and with Facebook.

Twitter now is a worthy competitor of my time against Google+ and Facebook, and this makes it all very exciting. I am eager to see the new Twitter.

Additionally, since all I can think of lately is iKnode, I began to focus on the validity  of our vision, specially looking at it as clear as the new Twitter (or at least it seems to be clear), or as fuzzy as the current one. iKnode’s whole vision is based on the three basic aspects that make a Back-end system:

  1. Application Execution
  2. Data Storage
  3. Task Scheduling
We have been testing Application Execution since November, and next week we release a Document based Data Storage and Task Scheduling. Having those 3 aspects, the vision of iKnode is functionally complete. But that is not all. Those 3 aspects are like the basic colors; you can mix them and get the rest. For example, disconnected services can be easily be implemented with the mixture of the three; another example is guaranteed messaging which can easily be implemented by using a data store and an scheduled task.
We have the minimum feature set that can cover the greatest surface of implementation for back-end systems. I believe we are in the right track for an stable business model, just like tweeter is doing now.

Evolution of an UI

// December 9th, 2011 // Comments Off on Evolution of an UI // .net, iknode

We have working hard on iKnode, and one of the things we wanted to improve was the UI. We just recently reduced the top bar to make it less complex, and also changed the icons to a more minimal set.

As we add functionality, iKnode has been growing complex and that has been reflected in the UI. That is exactly why we are taking the time to make it more friendly.

After we published the new UI, I compared it with past releases and I thought the evolution has been amazing, so I decided to put the UIs in a post. Without further ado, here there are starting from the first UI:


iKnode UI v0.8

Version 0.8

iKnode UI v1.0

Version 1.0

iKnode UI v1.1

Version 1.1

iKnode UI v1.5

Version 1.5