Jan 21, 2012 0
Jan 17, 2012 0
Seatgeek uses…
By looking at its Javascript code, Seatgeek uses:
backbone.js
http://raphaeljs.com/
underscore.js
JQuery
Jan 3, 2012 0
Amazing HTML to Canvas screenshot in Javascript
Dec 10, 2011 0
A good introduction to hypercard
http://www.loper-os.org/?p=568
I used to play with Hypercard in 1989 (I think) and 1993 again without understanding what it was useful for.
Nov 16, 2011 0
How to make a good website, the end-game for web development starts
Web development is going through a transition, now we are in the middle, and the destination will come soon.
The middle land is halfway to automation, we can now outsourcing all web development to humans attached to the machine. That is, the humans are doing the computation but they are automated. So it is easy now to develop a website without actually seeing a human face to face. The steps to develop a good website are:
1. Croudsource the visual design of the website at http://www.designcrowd.com/ to get the PSD of the visual design of the website done.
2. Convert the PSD to HTML at http://www.psd2html.com/
So simple, so effective, so cheap.
The destination after this is to have the machine do the design and the machine do the translation to an active webpage, that is the end-game of web-development. There are people working on this. Ultimately, the web design agency’s will become consulting agency’s without tech workers, then they will slowly die due to competition.
Oct 28, 2011 0
Notes about programming
These are more notes for myself, some thoughts about an “ideal” programming system. What bothers me about programming is the API’s have to be looked up to get something done, well not in every case.
If we want to add two number it is simple to do x = 5 + 4; but if we want to do something more complicated with a collection, we have to look up the collections API such as a List or HashMap. If we want to do something more complicated with complex number or actors or 3D graphics, we have to look at the API. Well this is the case in the programming world, but there is another world where this is not the case but we could get the same done.
The other world is the human world, we can ask a person to do something for us. For example I can ask a person to draw a 3D cube, or paint a scene. I can ask them to calculate complex numbers or sort a list. I can do all of this using the English language, it may not be concise, efficient or fast but it works. If I cannot convey the meaning I can draw pictures or diagrams to get the meaning across.
What is the difference between these two worlds, in the first one we have to ask API’s and objects for their methods, to understand what they can provide to us. In the second, we talk a common language, we can reason by analogy, we assume a level of intelligence in asking the question and answering the question. I could ask this person to use the computer to find me the solution or ask this person to program something to find the solution. So what are the differences? There is a common language which conveys meaning, there is a level of intelligence as well.
What is needed is a language which can convey meaning which allows us to describe what we want, not how we want it done. This is for answering questions and queries. The code should handle the how and should understand the language. I believe the language should be symbolic and geometric.
The fact is, intelligence is based on only a few simple rules. One is the question “1. is it true?”, if you ask this question of things then intelligent answers come out. “2. Clean it.”, anything which exists if cleaned or normalized is better. Hold on I’ll stop this particular line of reasoning for a second.
What is needed is a universal language, something which aliens could understand but is expressive enough for everyone to understand.
Oct 12, 2011 0
Pachosting does not follow their SLA, my cloud server with them was down for 2 days (correction 1 day) and out of my control
This is my customer review of pachosting and their recent issue with my server:
I currently host a server with Pachosting cloud service and just recently my server was down for 2 days, they said the reasons was “the root cause of the server issue was related to the OS image of the Virtual Machine on your server.”.
So basically, the OS image for the virtual machine was damaged in some way and this was totally out of my control and my server was down. The server was down for 2 days, my server goes down for 2 days and I cannot use it. I cannot start the VM or log in and all my websites are down. I don’t even know why exactly the OS image got damaged, they don’t say why, maybe someone split coffee on the machine? I have no idea.
You would think that the SLA would cover this? Well, according to the SLA wording http://www.pachosting.net/docs/pdf/sla-cs.pdf they cover any downtime, which makes sense. I don’t want my server to be down, especially when the situation is totally out of my control. So I asked them to apply the SLA conditions and to give me a refund as required by the SLA, they refused! The refund would only be about $33 HKD, a tiny amount, only enough to cover 2 coffees, but they still refused.
According to them “We are sorry that the trigger of the server issue is not related to our network/ backbone infrastructure but the system level, so SLA is not applicable. This may due to the loading of I/O processing on the server which further influences the Virtual Machine’s OS image. This may also due to the file so our engineers adopted File System Integrity check.”. My server is always at a low load, I don’t have anyone using it, I don’t have any customers using it at this moment only a few small websites, also I don’t see how the load of the server would affect the machine image. But the principle is important here and when my server is in use with real customers, what then?
So pay attention, if the server goes down due to corruption of the VM image, not caused by me, pachosting believes their SLA does not apply. Therefore, they have no motivation to fix it as its not covered by the SLA – and the server can be down for 2 days. So let this be a warning to you, don’t believe their SLA wordings, they only apply to the network connectivity, you have no 99% uptime guarantee.
Of course, I don’t agree about the SLA not covering this, looking carefully at the wording of the SLA it appears to cover any downtime, but I could not convince them of this, they just stonewalled me.
No only is it a problem of the server being down and it being out of my control, its a serious issue if I have customers relying on my server. If they cannot access the data on my server and its down for 2 days, then I could go out of business very quickly. Since no SLA covers it, then the risk is far too high for me to continue to use this in the longer term without a SLA covering it.
—-
Here is a follow-up to this issue, the server was technically down for 1 day and 3 hours, but for me that seemed as 2 days due to the hours. Ultimately they decided to follow the SLA but for a different reasons given by them as “Due to the slow response issue, SLA would be applied.”. They decided to follow the SLA on 12 Oct 2011, 6 days after the issue was opened on 6th of October.
I wonder if it is because I wrote this article that they then decide to follow the SLA? well then its good to write articles like this then.
Jul 29, 2011 0
Things I would like to learn in more detail
Akka Framework (STM), Apache Camel, Scala parallel collections, OSGi, Neo4J, ActiveMQ.