AI

Or the poor state of AIs.

People are scared of AI. Commonly they fear when Google seems to be to smart to be benevolent, when retargeting hit them hard or when we are confronted to our own limits that computers seem to ignore. Hollywood doesn’t help. Even Stephen Hawking and Elon Musk seem to share in their ways this fear. Sometimes for good reasons, sometimes for not so good ones. But, AIs don’t exist, at least not yet.

When people are talking about AI, they often make references about Google Search. Google is not an AI. They wish! It’s, at best, a gigantic crawler that put links into an enormous database. That’s it. They can sprinkle some social features, videos, images, rich page content, add a calculator, add weather forecasts, add a zerg rush… it’s still just a bunch of scripts that loop, fork, iterate around the same data. We can’t even say that’s successfully mimicking basic intelligence.

My definition of what’s an AI is indeed strict. A.I. stands for Artificial Intelligence, not Virtual Intelligence. I am not considering faking intelligence as the goal that to be achieved with AIs. It will be actually sad if we can’t pass that. Even if you manage to put all the knowledge of the world in a well-designed machine and empower it with complex conditions, statistics and machine “learning”, and it appears to be able to converse and make decisions. It will still be confined into what has been coded for it. Not being able to “truly” learn. Not being able to look past statistics. Not being able to achieve consciousness. And above all, not being able to evolve, replicate or reproduce.

Following this definition, I won’t consider, obviously, Siri or IBM Watson as an AI. They aren’t even embryos of AIs. That doesn’t mean they are not achievements and can’t be useful. Considering even the best chat bots, they are laughable and won’t foul a monkey for more than 30s. A better contender would have been IBM Synapse where neurons are basically artificially recreated. When they have launched this project a few years ago, it seemed exciting with buzz accomplishments like real auto-learning or the completion of an artificial brain said to be already as smart as a living mouse. But, now, the project seems to have failed its ambitions and they are back to more traditional approaches where the chips are just a different kind of CPU coupled with a special kind of RAM where you need to use a special programming language to take advantage of this special architecture. In top of that, there is no commercial release dates at the horizon.

ttn-emacsA good example about how AI are nowhere near to be intelligent is to study the game of Go. (Or also just considering how much computation is needed to challenge a simpler chess game.) In Go, despite decades of works and brilliant engineers passionated by the task, strongest algorithms can’t beat professional Go players and any average player can actually beat any software currently on the market. Because these softwares all lack the natural intuition coupled with a global sense of the board that humans gain automatically by playing the game. A true AI should be able to achieve that. Even without being explicitly taught anything.

Recently, a lot of hype has been around quantum computers. The hype is real but maybe there is no reasons for it. Reading scientific studies, quantum computers are just theories. For now, it’s not has been proven that any of the prototype are working nor that anything exploitable has been extracted from any of these prototypes. Companies currently operating in this industry (I am looking at you D-Wave!) seem to be nothing that elaborate scams. I presume the future will tell us if they are going to deliver anything of what they are promising.

Don’t be afraid of something that doesn’t exist yet and may not even exist in the humankind future. Don’t be afraid of something that we can’t understand yet. I do believe though if a true AI finally emerges from us or by accident, the odds that it will consider us as nuisance that needs to be dealt with, in a gentle paternalist way or a more aggressive one won’t be nil. So, actually, yes, you can be afraid a little if you want! But we are far from that.

PS: One of my deep personal hopes is to be able to see the emergence of a true AI before I die.

Fire Vic Gundotra

Google+ is slowly and painfully destroying Google and why we have loved them. Google, get your shit together and fire the one in charge: Vic Gundotra.

Google+ is fucked up by itself. No ones apart PR and lost souls are using it. The interface is freaking slow, I’ve never experienced something that JS hungry. All of this for some responsive effect that makes even my cat sicks. Basic stuff, like editing your profile is a pain in the ass and if you finally manage to edit what you have to edit, that’s literally an event for celebration. Circles are confusing are their best and using them is one of the painful experience ever, they should definitively use that at Guantanamo. Other fun fact: Nobody even really knows how to spell correctly Google+. Breaking news, nobody gives a shit about being on Google+.

Google+ has fucked up Gmail. I don’t like the idea that everybody I am mailing too is gonna to see my Google+ profile. I don’t like the fact that Google+ is sending automatic emails to people I am just interacting with by emails. I don’t like that they advertise them to join Google+. I don’t like the weird integration of Google+ circles in the sidebar. (Who ask for that?) I don’t like that my non-Google+ friends are considered as a second-class citizens. Gmail used to be clean and fast. Now it’s becoming another social aberration.

Google+ has fucked up GTalk. GTalk was simple and effective. You could do text and it was working smoothly. You could do audio and it was working smoothy. You could do video and it was working smoothy. Now, everything is a social BS (Hangout) event. Video call your friend and you got a hangout weirdo thing that post on Google+ (Who can actually see that post? Never even really bother to know.), the UI is the worst possible ever with no consistent colors and placements. (Just look at the top bar and the side bar.) The last but definitely the worst, Google Hangouts chats are not even searchable! GTalk was! Come on Google, come on.

Google+ has fucked up YouTube. YouTube was one of the Google best acquisition. Why not fucking it up with Google+? Now each time, you go to YouTube, you are being asked what account to use. Every freaking time. Do you want people to see your pseudo (What Internet is all about.) or your social BS account? Want to post anonymously your crazy trolling stuff or you want to assume your weird troll behavior in front of your family, friends and co-workers? What about places where freedom of expression is as real as Santa? What about YouTube being simply a vector of freedom? Thanks for messing that up.

Google+ has even fucked up the search. This is the worst part. From what I’ve experienced, Google Search has given an extreme importance to Google+ social factors and particularly to the G+ button. Let me rephrase that. Now, if you want to rank well on Google, you have no other choices than to be Google+ bitch: Add the G+ button, Google+ share button, the follow button and even the Hangout button. (Guh!) Get people to “+” your page. Get them to comment using their Google+ profile. (Even if your websites isn’t that kind of website that requires social interactions.) The new Google algorithm is no longer an algorithm. It’s just another popularity contest.

Conclusion. I don’t believe Google+ is a product of minds. I don’t even believe Google+ is a product of money. (The only argument in favor of Google+ is that it hasn’t hurt Google company valuation.. big deal..) Google+ is a product of politics. Internal company politics where they have lost sights of what matters. They have hurt their community and our unconditional love for Google is getting thinner and thinner if it’s still even love. Vic Gundotra has imposed Google+ to the Google organisation and eventually to its users. He was the “leader” of the Google+ revolution. Everything has been a miserable failure for both Google and for the web. He needs to take responsibility for his actions and quit or be fired. And us, as web power users and developers, we have the duty to speak up and call for his departure.

Car2Go EcoScore Sucks.

So, yeah. I’ve tried and I am using Car2Go. I’ve tried to resist the tentation of dropping my expensive month-to-month car rental at entreprise but I’ve failed. I got approved by Car2Go with some extra steps as I am a foreigner and I’ve got started. The first thing I’ve done is send a text to my strong eco-activist friend to piss him off. Disclaimer: I am strongly for the destruction of the environment, so it’s kind of ironical, that I am the one who get a Car2Go.

Obviously, a service like Car2Go which is really green oriented cannot come without some green bullshit nonsense. This time, the bullshit nonsense has a name, EcoScore. Basically, EcoScore monitor you driving style to give you an environment rating. You loose points when you are accelerating or breaking too strongly. You gain points when you do this softly. You have 3 beautiful trees (accelerating, cruising and braking) who get sad when you are driving normally (unless you are shadowing a snail). You are noting the eco-mentality non-sense, a tree should be happier when you are producing more CO2. But, Okay, that’s allright, we don’t ask them for any scientific accuracy.

I first encounter Car2Go EcoScore when I was driving very poorly. Yeah, I confess, I wasn’t really considering neither the environment nor the Car2Go golf carts. And I got this:

2013-03-04 15.53.43

I was scared. Shit, I screw up so much that the aliens spot me? I documented myself online and learn about the EcoScore system.  No one (Yeah…!) has ever posted this red warning stating that their Car2Go membership may be cancelled because of the Car2Go EcoScore. The more close warning I’ve found is a yellow vegan pussy one:

2013-03-04 15.52.04

So I’ve learned what’s the EcoScore is and what are the 3 tree real-time scores. After this event, I was caught into the game. Trying to reach the best score possible ever. I am a game addict and trying to score 100 for cruise, break and accelerating was kind of fun. Since then, each time I take a Car2Go, I display it in full screen the score board and watch the changes while I was driving.

Here what I found out. This system is bullshit. I’ve made an almost perfect score and to archive this, I had to drive really, but really poorly. Burning lights to not have to break. Accelerate very slowly. I think several people on their bikes were able to pass me, they seem not to care about their own EcoScore. It was not perfect drive because I slow down to fast when I’ve spotted a child walking on the side walk. Damn me, I should have know better that the environment cause is far more important than a life of child. With the butterfly effect maybe this single brake will trigger the new ice age. I am deeply sorry if this is the case.

Technically, the system is more than inaccurate  Braking when you go up a hill will gave you a perfect score in only one single break. But breaking while you are going down a hill will destroy your score. Basically, saving the whales consist on accelerating when you are going down an hill and breaking when you are going up. Progress. Moreover, and I think it’s the biggest flaw, it doesn’t take account of the importance of the trip. I think we need another parameter with this, maybe by prompting the user for the reason of the trip. We can rank then with something like: Going to the Hospital > Going to see your Mum > Going for Groceries > Going to Work > Going to Party > Driving around purposeless… A perfect trip will be then to go the hospital while driving very slowly, avoiding lights and with a hill built near the arrival to slow down.  I guess I will submit this idea to Car2Go. Seriously (They might be serious with this idea though!) and eventually, whereas spending money, engineering and marketing tricks to find better ways to spy on their customers, they should spend a little of this money to improve their mobile app. Seriously, it’s shitty.

Here a trip where I’ve saved 3 trees, 5 birds and 2 squirrels. I am good person.

2013-02-18 16.20.33

Ironically, I am okay with a private company spying my driving and making business decisions based on that. Ie. if they decide to cancel my membership because they think I am driving poorly whatever metrics they want to use, it’s their call. What piss me off is that they try to make you believe that this system is for saving the environment or something, They are not saying we are spying on your driving style but they are saying “We try to give you advices to adjust your eco-driving style.” Thanks mama. It will be also okay if it was a real private company, but it’s not. In Austin, Car2Go has private parking spots, free street parking and subsidiaries from the city. They got all of that because of the hypocrite eco-friendly attitude they display.

Now, like Cartman would sang: “I don’t give a crap ‘about ****** Whales, So Go and Hug a Tree.”

Equity math for co-founders based on Hartator Cash Method

After reading a lot about equity, profit-sharing and other various related subjects, I was profoundly dissatisfied and I decide to come up with my own method, humbly called Hartator Cash Method, in order to split out equity in a fair way between co-fonders. First and above all, I don’t believe that equity should be divide evenly, like 50/50 or 33/33/33. It’s morally profoundly wrong and economically inefficient. Indeed, it sates in an agressive and coward way, that either you believe that everyone in the early company are equal, and that’s never the case, or, and that’s maybe worse, that too poltron to do something about it. There is other methods, that guide you to list and rank elements like level of responsibilities, commitments, experience, industry knowledge or the importance of the idea or the business plan. You try to give a rate, seriously a rate how retarded is that?, to each founder for each elements in the scale of 10, 0 meaning your are a sh*t in this area/skill and 10 you are an expert. Unfortunately, this process is profoundly subjective  in every single steps and lead to more incomprehension and confusion than an evenly distributed equity.

I believe in cash. I believe business is about money. Everyone that told you that business is not about money is damn hypocrite who lie to himself or lie to you. Everything, and I emphasize everything, that makes a company, a product and service can be quantified in cash. Equity shares is consequently just the amount of cash brought on the table by each co-founders. The hard part is to work on the valuation of each component that makes a company. And your arguments, you must have at least one!, must be focused on theses valuations.

You have to work on evaluate each co-founder contributions against the components list here:

  • Capital and Investissements
    We are starting with the easiest, startup capital and investissement contributions are strictly egual to the amount of cash a co-founder invest. This investissement is at risk, so I advise you to not take account of interest rate or currency depreciation. If a co-founder invest $100,000 just had $100,000 as his contribution.
  • Potential Salary
    We move forward directly to the hardest part, but I’ll make it easier for you! Estimate each co-founder potential salaries based on the best they can expect if they were working for a competitor that will pay them the most they can expect to be paid if your competitor recognizes fully their expertise/skills. Don’t be shy and write down more than decent salaries! Indeed, if you are starting a company, it is because you believe that your work can be valued much more than the price you can have by selling it in the regular job market, so make your best shot! For example, you can value your CEO at $250,000 by year, your CTO, $150,000 and your CMO, $120,000. Don’t add up right now each potential salaries as contribution, keep it down somewhere and we will use it latter.
  • Work already done
    Even if you are starting a brand new company, the odds that one of you or some of you have already done some work are not negligible. Make your best estimation of the time spend by each co-founder, be precise specially if you are dealing with some people working part-time and some full-time. Then, calculate the contribution of each founders based on worked time and the potential salary, the one we calculate before, they can have claim for this time. For example, if the CMO who can claim a potential salary of $120,000 yearly had worked 2 months full-time for free, it should have $20,000 more as contributions. If a co-founder has been paid by another co-founder, he can’t claim any contribution as he wasn’t working for free. The money paid by the other co-founder must be accounted as a regular fee for this co-founder.
  • Future Work
    Any work that is going to be done without being paid must be counted as a contribution of the co-founder. As soon as the revenue of the startup is enough to give a co-founder a decent salary, his work shouldn’t be counted anymore toward cash contribution. Estimate this date and add as a contribution to each co-founder the time they will work for free evaluated again the potential salary they can have claim. If you expect the company to not be able to make enough money until 6 months, give at each co-founder half of the potential salary you have calculated previously. Obviously, if the company will make tremendous amount of money since day one, nobody deserve any contribution based on the work that are going to be directly paid.
  • Social Connections
    A startup team is rarely balanced, they is often one who is more socially active than the other, who get more connections, more business-related friends and can use his network for the benefits of the company. The question is: How we value that? The simplest answer will be whatever you will be ready to pay in the regular marketplace. The commission rates for a sale are in every industry are pretty transparent, from 5% for real estate to 50% for tech services. For example, if one co-founder bring to the company a client that is worth $100,000 and the commission rate in your industry is usually 20%, give to his co-founder $20,000 as a contribution. Exactly the same thing work with contacts with potential hires and capital venture: How much an external agent will be willing to take to give you his contact?
  • Miscellaneous Fees
    Fees include anything that have been paid by a co-founder and must be counted as a contribution. It can be domain registration fees, legal fees, contractor payments, subscriptions, rents… I strongly recommend to include all fees even small ones to add the more fairness possible to your math.
  • Idea Conceptualisation
    The idea and the idea conceptualisation, alias business plan, has also a price. Idea worth almost nothing, all the value of a company is based on the aptitude to execute the idea, to make it real. Idea conceptualisation takes time, energy and experience and have a higher price. A tip will be to evaluate the contribution of the co-founder who have done this work as if he was working for an external marketing agency.
  • Others
    If you think of other things that can have a value and are not listed above, take time to evaluate it based on its market price. Then, give the co-founder concerned the value of his contribution. For example, if a co-founder has a working prototype, try to evaluate the value of the prototype if you have to pay an external company to make it.

When you are done, sum up all the contributions of each founder and you will have the value in cash bring on the table by each co-founder. Sum up all the total values of each co-founder and you get the virtual valuation of your company, basically all the money, real and virtual, needed to start the company. Then you just have to make a ratio, co-founder’s contributions/total company valuation, to estimate each co-founder fair shares.

Here is an example, assuming the CEO’s potential salary is $300,000, the CTO’s $150,000 and the CMO’s $120,000, and the company will take 1 year and half to make enough money to pay the founders:

  • CEO
    Capital = $150,000
    Work already done = $100,000 (4 months full-time)
    Future Work = $450,000
    Social Connection = $50,000 (1 customer worth $500,000 with 10% commission)
    Legal Fees Paid = $20,000
    Total Contributions = $770,000
  • CTO
    Work already done = $50,000 (4 months full-time)
    Future Work = $275,000
    Prototype Build = $70,000
    Total Contributions = $395,000
  • CMO
    Capital = $100,000
    Work already done = $20,000 (10 months part-time at 20%)
    Future Work = $180,000
    Social Connection = $200,000 (5 customers worth $2,000,000 with 10% commission)
    Marketing Fees Paid = $30,000
    Total Contributions = $530,000

In this company, the total valuation will be $1,695,000. The CEO will receive 45%, the CTO 24% and the CMO 31%.

Congratulation, you are all set. Feel free to use this method and adapte it to your own business, company or startup. Remember, the main discussions with your business partner must be focused on the valuation of each components and not the resulting shares of each person. Thank you for reading, I am hoping it will help you to make better and fairer co-founder deals and, above all, good luck with your business!

Needs vs Usefulness

I’ve just finished Atlas Shrugged from Ayn Rand, great book by the way. This reading leds me to think a lot about needs. From Ayn Rand works, she despises the link made between needs and the obligation of the state to try to give satisfaction to them. She despises the fact that you will bring productions of other men at an end of a gun, the looters behind the gun defining who is the state. I think we can go further into her thoughts and challenging the mere use of the word “needs” to analyze human behavior.

We use the word need plenty of times when we try to have an insight about how human works, thinks, acts, lives and loves. Of course, we can think about communism, which try and fail to address everyone’s needs in an attempt to guess what every people want. But, we use the word “need” also in more capitalism ends, notably in marketing services. The customer needs whether it’s a company or a person is then the basis of how marketing staff thinks. The last but not the least, we use needs in sociology to analyze how one man or woman interact with other men and women. Thus, it have been identified that each one of us has a fair amount of physiological needs, safety needs, stability needs but also fun needs, spiritual needs, social needs, emotional needs, and even love needs.

I think this way to analyze human behavior simply doesn’t work and doesn’t make sense. When you go out to eat a burger, you don’t say: “hum.. I feel hungry, maybe it means that I have to fulfill my food needs. I ought to buy a sandwich and eat it.” No, you directly go eat it without even thinking it is one of your say-so physiological needs. When you feel unsafe, you buy a gun. You are not fulfilling a safety need, you are just trying to do your best to stay alive! When you fall in love, you don’t even think about that it can be a need, you just feel it, Moreover, the absence of it doesn’t mean you now want to seek it. The human analysis by his needs is a way that makes companies loose their money and politicians keep their jobs. As a matter of fact, it may be obvious that something that is good for politicians cannot be profitable!

Men act towards what is the most useful for their own survival and for their self-happiness. When we feel hungry, we don’t buy a burger to own it, we buy it because we know how we can make it useful for us, how we can eat it and how this help to not suffer for starvation and death. We don’t want things because of our needs. We want things because of their usefulness. Our mind tell us that this hammer must be bought giving that it can be useful to make this nails right, not giving that it will fill a part of our do-it-yourself needs. When you buy a gun, you know well that by itself, it will not raise your level of safety, but you know also well in case of someone trying to break into your house, it can be very useful to make him runaway.

We value things according to the usefulness we find on them, either for our very own survival or for our seek of happiness. The reason why something material can be worthless for someone and invaluable for another one is that our mind differs in what we have learnt and so what we think will be useful. Oil was more than worthless a few centuries ago because it was simply useless. Human minds managed to build useful machinery to take advantage of the oil nature and now oil is valued more than gold. It is valued more than gold because it has become a lot more useful thanks to a series of complex inventions. We feel love as a good thing because it is pure happiness. No needs for our mind to make an extra step to judge its usefulness for our self-happiness, indeed, It’s already it.

Companies also must not think about what clients need or want but what’s the most useful for them. To get it straight, when clients express theirs desires, it must be taken of course in account because the odds are high that this IS what is useful. But, as a company, we must challenge ourselves to find for them new ways that no one has dreamt of. It’s not by studying market needs, that Steve Jobs invented the Mac and the whole personal IT market, but by guessing, what will be useful for other people and, by convincing them that it will be. The study of needs is useless and drive us to collectivism, bad ideas and a lost of money, therefore, we must avoid it and focus on what really matters, determining what will be the most useful thing we can create and how we can efficiently bring it to the customer.

As human beings, we have to seek what’s, material or not, the most useful things we can find to leverage our existence by, first of all, keeping it and after that, by driving towards happiness. And, we have to remember, that every man and woman, consciously or not, has the same behavior, they follow what’s they think is the most useful for their own survival and for their self-happiness.

Ruby vs Python 2011

Yeah, that’s another debate about the pros and the cons of python and ruby. Many thinks it’s a false debate, you have just to give a try to both and see. I strongly disagree.

You cannot judge a whole language in a couple of hours, in a couple of days or even in a couple of weeks. Languages are complex, you have to learn the syntax and moreover and that’s maybe the most important part, the inhereted library which come with it.

For example, Ruby comes with great web/network related libraries (RoR, watir, webrat, anemone…) Hence, tools in the linux distribution BackTrace use Ruby as the lang of choice. In another side, Python has great libraries in stuff which use realtime environment, we can think about blender, games development, OpenGL, graphics interfaces…

Python has a huge support from Google, so it means a lot about the quality of the language. Nevertheless, the creator himself of Python now works for Google, so we can legitimetely question Google for its impartility about this subject. Ruby has direct or indirect support also from a lot of companies, but any of this campanies can compare to the size and the influence of Google.

Python and Ruby was created nearly at the same time and I think that the version number of the two languages reflected the underlined philosophy. Ruby’s current versions is 1.8.7 and 1.9.2. Python’s are 2.7 and 3.2. We can fully accept that’s for ruby, 1.X are major version whereas for python X.1 are the major version. So, for the same amount of time, Ruby have 9 “majors” versions whereas Python only 3. Yeah, I know it’s mean nothing about the quality of the language but it reflects a lot about the two language philosophies. Ruby move forward quickly and so does its community. Python works slowly but with far more strong support for each its version.

We can fell that in the language libraries. Python’s one tend to be more stable, less subject of changes, more robust and on another side Ruby’s one are more in the edge, with features been added, deleted and changed every time, and finally with better and simpler approach particularly with the ruby DSL which can make things pretty clear with a reading like natural english (: Rspec is a good example).

The downside of ruby is the inconsistency of the behavior between versions. This works for the core but also for its libraries. For example, core regex behaves in a different way in Ruby 1.8 and Ruby 1.8 with unicode strings. It can be very frustrating. Another thing frustrating is to make a extensive use of DSL, Ruby allows libraries and modules to pollute the global namespaces very easily and to monkey patch the core classes. It can be useful to have a to_json methods associated with every arrays but it can be painful when two libraries try to add to_json twice and their to_json do not behave in the same way. Python modules are simpler, prettier and they do not pollute the namespace. Unfortunately, Python miss tools like rubygems and bundler to make the management of modules very easy and consistent.

Back to the beginning of the post, it’s not easy to choose between this two great languages. On the other hand, you cannot waste your time rewriting your application in both to see what fits best. My opinion is simple. Python is a language to talk to the computer. Ruby make the computer able to talk to you. Python takes a academic approach trying to do the right things at the right point. Ruby try to fill the hole between humans and computer.  Good or Bad ? Who can tell ? If you want a stable approach learn Python. If you like to gamble, bet Ruby.