VooDoo Chicken



The required useless jargon: This site displays ads, and for that purpose it uses the services of a third party ad provider. Personally I don’t care who you are or what you do, but ad providers are interested in knowing who you are and what you do, and what time do you go to the bathroom, so they know exactly what you like so they can show you publicity related with your interests; be aware that this site may use third party cookies for that reason.



If you are here you are probably looking for T-shirts, as it's been years that this page has nearly no traffic.


T-Shirts be here

(T-Shirts this way, Follow the Soylent Green Road)


There are some free coffee break games and other stuff for download. Whatever you do with it is at your own risk, which means that if for using one of the games or anything you do in this site (including buying T-shirts) your country explodes, a black hole sucks all your family and your dog looses an eye, deal with it on your own, even if I was advised something may occur (not that I know there is something wrong with the things posted here so far). Hope you enjoy it.

Some of the things here have a 'Mac' version (when Flash exported in Mac executable format also), I have not tested them yet, though I suppose they work.




Travesía en el Hielo

Travesía en el Hielo (Ice trip). The one I probably like the most from my old games. Move the mouse and click to slap the fishes, keys 1, 2, 3, 4 to select which penguin gets it.

PC Mac


Travesía en el Hielo 2

Travesía en el Hielo 2 (Ice trip 2). A remake of my very first Flash game. It is basically the same mechanics, except instead of avoiding things in the water, you had to avoid ghosts, trees, pumpkins if I am not mistaken and other stuff. Graphics were lousy but the sound was great, so i expect to recycle that sound for something else; if I can find the files.

PC Mac


Travesía en el Hielo 3

Travesía en el Hielo 3 (Ice trip 3). It was intended as an advergame for a company that makes beverages, and has a penguin for a logo. It was not used for that, so I turned it into something different, but the result is something that almost makes no sense, tough I like the animations. Keys 1, 2, 3 to select action: change the penguin direction so he does not run out of the stage, grab it (to explode it), or recall more penguins. Explode the penguins on people when they seem to be getting too hot. Score depends on how many clothes are on the floor when you give something to a penguin; you give clothes to penguins to get more movements/penguins. No virtual penguins were harmed during this game (they reincarnate as Doom extras, then that's where they get hurt). Virtual penguin meat is recycled as virtual dog food so it does not get wasted.

PC Mac


Salvemos a Precario

Salvemos a Precario. This one, rather than a game itself is more like a test to try aspects you would need in a side scroller. You may consider it a game with a half of a quarter of the length of a single level, with only one boss.

PC Mac


Control de Pestes

Control de Pestes (Pest Control). Aim, shoot. The basics.

PC Mac


Internet Explorer


Joy of Tech



Green Man on a Trip

Green Man on a Trip. Also, one of my first Flash games. I made it basically to test what I considered 'special effects' at the time.

March 2019: Renamed PC binary as it seems some antivirus programs were confusing it with 'Gator' malware

PC Mac


POSSIBLE (as in, first they must be verified before doing something about it) medical causes worth studying:

Epilepsy - blinking lights. The quantity of blood in the brain may be different when looking at a bright picture than a darker one, since the brain needs less effort to understand the picture. The change between bright and dark causes flux of blood in and out, and it may be related with the basic physical damage of pipes when flux is irregular. Caution when placing a ceiling fan near the ceiling lights, because of the shadow projected.

Sudden death in babies because of lack of oxygen. Babies spit a lot (produce a lot of saliva), and have not enough coordination and muscle control/understanding to turn themselves to the right position, like a turtle on its back. Most or all babies are left sleeping face up (how else), and probably while sleeping they choke with their own spit.I heard though, that there are most cases of sudden death when babies are face down than face up; probably suffocatted by the pillow?

Edit: I was gonna suggest that may be a solution could be a sleep positioner (wedge pillow). As a disclaimer, I am no expert in this, and these are just guesses, but since babies could suffocate while sleeping face down (with the mattress) and they also could suffocate while sleeping face up with their own spit, a possible solution could be that they sleep reclined. It seems both FDA and CPSC have advised against them (sleep positioners); precisely because they could cause suffocation. The best solution: be aware of your baby, and keep checking.


I was gonna call this part 'blood movies', but it would sound like yellow press. No, it's got nothing to do with gore in movies, it has to do with things like this: you are an actor and you get a part in a movie; this is your big chance. As it usually happens, the director is a big shot, and to show he is a big shot, he has to act as a cretin (you can not prove you are important unless you act like a maggot but everybody puts up with you).
As it is industry standard, many things that are captured on film are not scripted; they are instead drafted vaguely or they occur with no previous notice to the actors, so the reaction looks natural; for example, if you want to see the reaction of the actors after an explossion, you may not tell the actors about the explossion, but just make things blow up and see how the actors react, so their reaction looks natural on film; if you want to see the faces of the actors under danger situations, put the actors under danger situations and film their faces.
Ok, that's one part, but what if the situation is like this: you either do the part, even if you have to risk your life, or you are out of the film.. this is your big chance.. hard chance you'll get another one, and if you are not willing to risk your life at my whims, there are a gazillion wannabe actors waiting for their big chance who are willing to risk their lives or turn into whores for the chance to appear once in the big screen, and if you don't like it, what are you gonna do, run crying to your mommy?.
Here are some comments from the crew on Michael Bay's site after he fired Megan Fox from the Transformers series: 'She was famous! She was the next Angelina Jolie, hooray! Wait a minute, two of us worked with Angelina – second thought – she's no Angelina. You see, Angelina is a professional.'. 'We know this quite intimately because we've had the tedious experience of working with the dumb-as-a-rock Megan Fox on both Transformers movies.'. Her answer: "He's like Napoleon and he wants to create this insane, infamous mad-man reputation. He wants to be like Hitler on his sets, and he is. So he's a nightmare to work for but when you get him away from set, and he's not in director mode, I kind of really enjoy his personality because he's so awkward, so hopelessly awkward.". Yes Mr. Bay, those comments were because she had to wake up at 6 am., not because she had to stay at a few cms. from a large blade that was cutting metal, with no way of calculating the direction of debris, and if there was a mistake, everybody would die.
This kind of things have lead to situations like actors kicking the director's ass in stage.. is it not, Mr. Bay?. In later comments, Bay said he fired Megan Fox after Steven Spielberg told him to, as he was the executive producer of the films.
More situations like this: in the movie 'True Lies', from director 'James Cameron', the actress Jamie Lee Curtis made a scene in the roof of a limo trying to catch a copter. About that scene, James Cameron said it was Curtis who requested to do that scene herself; Curtis later belied that, and repeats what she really said: "Oh, yeah. And just where are you going to be while I'm dangling way up there in the air, Jim?". In the same movie, the actress Eliza Dushku, who plays the part of the daughter, broke some ribs in a stunt, when she was just a 12 years old girl. Or maybe actor Brendan Fraser wants to comment about some incidents during 'The Mummy Returns'. Part of the decline of Fraser's career has been due to back problems.
Ok, so not every director/producer is a jerk, some actors/actresses genuinely request to do their own stunts, and not all the times something happens on set is because of negligence; it is understood that accidents happen, but just as a heads up: if you have a lousy plot, making more explosions won't make it better, and if you paid good money for an actor/actress contract and you chose that person because he or she would generate revenue, you don't try to kill that person.
Just like if those things where not enough, how about the hypocrisy that surrounds them: if during the film somebody steps on a dog by accident, there will be comments all over the tabloids about animal treatment, about the comments by PETA etc. It seems that if a monkey attacks a child in location and somebody tries to stop it, it is a big deal.. but it does not apply if human beings get screwed big time by negligence or incompetence by the directors and the crew. Basically, an animal is more important than you.
No, these are not isolated cases, these things happen all the time, but since everybody who steps into a set is forced to sign a non disclosure document, every thing that happens in the set may go out to the public as 'an accident in a car, which had nothing to do with the filming'; and basically, if you step into a set, is because you are a tool.
Ok, so that's for the actors/actresses who in one way or another do this because they got their big chance and most chances are they knew or had an idea of what they were getting in, is that all? Hmm.. not really, and that is the saddest part: during the filming of Transformers 3, in a car chase scene where a call for extras was announced, the cable that was towing a car got loose and in the whiplash, the cable broke through the windshield of the car being towed, and got into the skull of the person in it. A 24 years old woman called Gabriela Cedillo, who attended the call as she saw it as a possibility to some day be an actress and that was a way to get into the scene, now has lost the movement of one complete side of her body and the left eye for the rest of her life. The studio placed the blame on a bad welding. Why is it sad? Because the welding properties can be calculated so this kind of things don't happen; if it was not possible to calculate a welding properties, then there would be no planes or cars, because they would stay in one piece just by luck. Fortunately, we know enough about forces, material properties and so on, to build things as they are supposed to be. This is obviously the result of negligence.. but hey, the movie made millions.
I believe it is just fair that everything that happens in the set gets disclosed, under penalty of law, either at the end of the production or during the production, but before theatrical release, so we, as viewers and clients, decide to either support or not, as our own choice, the negligence and stupidity of incompetent directors that replace a good story with risk scenes, even though they are pussies that don't take the risks themselves.
This is in comparison to buying a diamond, so the person who buys the diamond, gets to know if this is or not a blood diamond.
Some aspects that should be disclosed are: Was the actor/actress aware of the type of scenes requested during production, their risks and so on? are the scenes the same as described before signing up? did the crew take all necessary security measures, according to an expert in the subject? was any of the specifications of the expert denied or replaced? what was the reason for denying those measures? was the director in the same risk group as the crew or the actors making the scene? which one was the reason for the accident? those, amongst others.


Another day, another rant. Again with movies, luckily not all directors and producers are divas that try to kill their actors because is somebody else who is risking their lives yet they get all the credit 'for being a genius'.

This time is about structures: Some jerks have no problem destroying constructions of hundreds of years ago so people talk about how in the film they destroyed a building of hundreds of years; even if nobody will talk about the film two years after it is released. Also luckily, this is not very common now, as now destroying buildings is quite easy (and cheap) with CGI.


I was raised as a Catholic and for a while I considered myself religious (now I feel awkward about some things back then); now, if something, I would call myself 'agnostic'.

Here is a post in the forum of a web site about cartoons:

"One problem with trying to eliminate God in order to believe you can do whatever you want… is that you’ll ultimately lead others to believe they can do whatever THEY want (including to you)"

The original topic was not about religion but about the cartoon of the day, but as sometimes it happens with general-topic forums, somehow it drifted to religion (as it also happens with politics).

The thing is, when we were kids our moms probably said that if we did not eat our vegetables, the Boogie Man would come to take us who knows where, but it would not be pleasant. I don't think any grown up still believes in this; but for me at least, a grown up that still expects the Boogie Man if he does not eat his vegetables would be a sign of immaturity.

Maybe is not about the vegetables anymore, but it looks like we still remain in the same mind set. Unless we are talking about a lost tribe that still does human sacrifices in the middle of the jungle, most religions state more or less the same things; they are all about 'don't kill other people', 'don't steal from other people' and so on. Those statements are not bad things; those things are actually the result of maximizing our wellness while living in a society, maximizing the wellness of the whole society as well (but apparently those were not obvious and we needed to hear them from a divine entity).

In practice, even though all religions state the same things, it seems fine to do wrong to those other people if they practice some other religion, or if they are from the same religion but we say we repent from it. For many, religion seems to be more about brand positioning rather than to behave nicely; also, if I believe that if my Boogie Man is from a different brand than yours, you will have no fear of eternal damnation therefore you are not obliged to act well; therefore you are a bad person. ‘We’ are the good ones; the others are evil, because they worship the devil.

Maybe we should start educating to act nice not because of the Boogie Man that is waiting for us in the afterlife, but because our actions have consequences right now, and if we are aware that if something is wrong it does not depend on if a cop is watching or if a magic being told us to do or not to do so, but that the quality of our lives while being part of a society depends on the actions of all of us together.

Now go eat your vegetables, or the Boogie Man will come to get us.


Today there was a discussion in a forum about a cartoon, where somehow people discussed about Shakespeare. It was nothing related to literature (it was a cartoon, like the ones on ‘the funny pages’), but still, somebody referred to ‘to be or not to be’ as ‘2B squared’. Actually it should not be ‘2B squared’. The sentence has an ‘or’ in the middle, and ‘or’ is akin to addition, not multiplication; so the sentence would be more related to something like ‘2B times two’ rather than ‘2B squared’.
Also, since ‘that was the question’, the answer would be TRUE. To be or not to be is equivalent to a | ¬a (a or not a, where a = 2B; I am using ¬ instead of ! because with some typefaces it may not be clear); and that expression holds TRUE. In case the or was an exclusive or (xor), which may make more sense, the sentence above would be replaced by something like (a | ¬a) & ¬(a & ¬a).
Some authors may disagree tough; as for some authors ‘the answer’ is 42. But ‘to be or not to be’ (the question).. 42 (the answer).. does not fit. Let’s pretend it was a different question.
My guess is that in the planet of origin of the mice they used some kind of language with infinite words. But in earth, since we are so primitive and we use languages with a finite number of words, every sentence that can be described in words is part of a set that even though is infinite, is enumerable (compare to integer numbers, which are expressed with a finite set of digits, yet even tough is infinite, any quantity may be described with those digits). So, if ‘the question’ can be expressed with words, it may be enough to make a simple program that enumerates the sentences that can be assembled with the finite set of words, and eventually ‘the question’ will pop up. You can even speed the process using dimensional analysis, to check which sentences may have a numeric equivalence, and optimize which sentences have an answer in that range

Yes I am totally aware that I was rambling above. I am kinda hypocrite since I don’t have too much patience with people that discuss which ship can kick the other ship’s ass between Star Wars and Star Trek (or who would win between Batman and Superman). The answer would be nobody, since none of those ships exist, and it may be whoever the author wants them to win. I was doing the same thing, making arguments out of nowhere for something that somebody made out of nowhere, but that got me thinking about how in movies, sometimes they want us to believe the character is the most intelligent person in the world, so he or she says something that is supposed to sound ‘transcendental’. Unless the writer of the script was the most intelligent person in the world, whatever comes out of the mouth of the character will most probably look ridiculous when trying to pretend it was the most intelligent thing to say. Either that or ‘the black box’ solution, where something that we can not explain is enclosed in a box, and in most cases, it affects the entire world and only one person can save us all, saving or destroying that black box.
Just to come clean, I haven’t read a single complete Shakespeare thing, and the things I know about his works are the same things people repeat everywhere all the time; but I did see the ‘Hitchhikers’ movie (and I like it).

Nonetheless this also happens in other areas, like ‘the Turing test’, which implies that to know if an entity has intelligence, we should be able to sustain a rational conversation with it. It means that Google and Siri may be the most intelligent entities on this planet, even tough Siri may not have the slightest idea of what a gas station is (yet is able to search for its definition in Google and read it aloud, or point us to the nearest gas station), or have the concept of a vehicle, or that vehicles need gas to move. In the same way, if an alien that was able to travel from a galaxy far away, or even the most intelligent person in this world is in front of us, but he or she speaks in a different language and we are not able to communicate, that person is stupid. Same thing with babies.
Actually the Turing test concept is flawed, in the same way the problem of the chicken and the egg is flawed. Both have clear, objective answers; the problem is they are flawed syntactically. The chicken and the egg may have a very simple answer, but it fails because we are not clear in our definitions of chicken and egg and even though I may have a clear definition, my definition of chicken (related to eggs) may be different than the definition of chicken from the person in front of me. Same thing with the Turing test, it fails because we are not clear about the definition of intelligence




There used to be in this page a ‘get Mozilla Firefox’ banner; now there isn’t. The reason why is because I find Mozilla quite annoying; it seems to take more processing in overhead than in displaying what it should be displaying, and the load seems to increase dramatically with each tab opened, which is not related with the content of the tab; plus it also seems to always have the hard drive busy for some reason (OK, that was an exaggeration.. just most of the time), which not only affects browsing but any other program that is running at the time. Firefox seems to respond to events only if it feels like it (like having to click many times to execute an action because Mozilla decides to leave it halfway -like selecting an option on a right click menu, and having no other response besides of closing the menu-, or even execute the event in the wrong tab –that is, clicking on some tab and executing the action of the click in another tab-). One slow tab may crash the entire browser (unlike most browsers today, that will keep each tab in its own sandbox), and they seem more concerned in adding new features that nobody cares and nobody uses (and make it slower), instead of fixing things that have been wrong since many years ago.

Though it may seem that way, this is not a post about Mozilla; I actually still use Mozilla as my primary browser in some computers, mainly because I am a creature of habits, and because the alternatives have problems of their own. There are plenty of posts and articles out there telling us how Explorer 6 was also known as Explorer 666, and how Microsoft attempted to monopolize the Internet and multimedia content by releasing their own formats based on patented formats from other brands –like Visual Basic Script over Java Script for web scripting and Windows Media formats over existing multimedia formats-, without adding nothing of value, though their distortions could be viewed only in Windows machines as they required specific programs -like Windows Media Player, or Internet Explorer-, that would run only on Windows.. that meant that despite HTML being created by other people as a standard with the idea that a web page should look the same no matter where it was being displayed, there were some HTML pages that could only be displayed correctly in a machine running Windows.
Most recent articles that mention Explorer talk about how they removed Explorer completely because it sucked and replaced it with Edge, how Edge re-attempted to monopolize how certain web pages should be displayed, and how even Edge is being replaced now, as they plan to base the next browser in Chrome, which they have been criticizing for .. ever? It’s quite easy to pick on Explorer and Microsoft browsers, as they had a life of sucking.. by the way, did you know there is a browser called ‘Vivaldi’, which is based on Chrome but with all the tracking and Googley stuff removed? But Google decided to sabotage their publicity (that is, till there was a legal action against them) because it competed with Chrome; and as usual, they were not available for statements when that happened.

Rather than browsers, I was thinking about ‘Flash’. For anybody who had access to Internet enabled devices in the past few years, Flash is a very familiar name. Flash was, or is, an ad-on that allowed interactivity in web pages; that means that web pages did not have to limit themselves to pictures, text and links, but also had interactive content and animations. It was kind of common to find embedded games in web pages, or interactive movies, or interactive kiosks and store fronts; though it was also common to find a web page with all kinds of advertisements (some times more than once in a single page) including banners with large videos that used to take up all bandwidth (in times where bandwidth was way tighter than it is today),  and/or sound that started playing as soon as somebody browsed the page in their workplace, sometimes without a button to shut up because of the lack of foresight of some ‘designers’ that cared more about their portfolio rather than the convenience of the user. But independently of the suitability of some Flash banner in a particular page, the fact is that the web was interactive. With the arrival of web video (Youtube), that interaction was replaced by displaying videos embedded on web pages (also with Flash); still, making Youtube aside, there was a new player on the hood.

Some years ago (more than a decade), Flash was running in the majority of devices that had even a modest computing power, a screen and an input interface; they used to brag about being installed in not just PCs, but in more than 90% of all current computing devices. ‘Devices’, not just PCs; that’s some serious user base. It was not uncommon to watch interactive presentations or Flash games from web pages in a Nokia smart phone, or any ‘Symbian’ device, or even Windows Mobile devices including some smart phones, and nearly all handheld assistants from different brands. Mobile devices were able to run Flash things, and it was a way for example, to discover and play games made by indie developers.

Then a new player came along: some day, Steve Jobs wore his distinctive black-with-turtle-neck jersey, announcing to the world that the phone of the future would not be able to run Flash, despite phones at the time being able to run Flash with no problem. It was slow, insecure, used many resources and there was an open alternative that did not belong to another company; most importantly: the phone of the future would run HTML5. It’s worth to check if that statement holds true:

Flash vs HTML5



Flash vs HTML5 WinFlash vs. HTML5 osx


Those are old articles (2010), but then again that date is closer to the date Mr. Jobs made his statement. The pictures above show the performance comparison of Flash vs. HTML5 in terms of frame rate; a higher value means there is more frame rate, or in other words, that the component is able to refresh the screen more times in the same time period (it runs faster). It seems that under certain circumstances, Flash is, or was, able to move more than twice as fast than HTML5.

Once Mr. Jobs said Flash had no future in mobiles some other brands followed, and Android, which had native Flash support at first, then removed that support in following versions. Since watching web content has moved largely from desktop devices to phones, designers started to remove Flash content from their sites, and soon browsers started to remove Flash support altogether.

This is taking way longer than expected, time for a pee break. Continues below.


(Continues from above) Concerning security, yes, there have been security concerns about Flash, some more serious than others. We all have read some press releases telling us we should panic and uninstall Flash or Java and then burn the computer that was contaminated, mentioning things like some memory leaks or some statement like that, but chances are many of us did not know what memory leak meant, or what the problem was about; by the way, memory leak means that the program allocates some memory, but it does not return it to the system later (free the memory), so the computer can not use that amount of memory while the program is running. The thing is, we see some press release with some fancy words and instead of searching and understanding what does it mean, if the report says we should panic, we panic. But was, or is HTML5 safer than Flash? Probably not. See, HTML5 is not a program released by some company; instead it is a standard that many companies implement on their own; it is also a set of instructions that have access to some functions and some parts of the computer that Flash didn’t have access to; which means that without exploiting a vulnerability, you can do more damage using plain HTML5 scripting than with a Flash movie, and it also means that HTML5 vulnerabilities are sparse, or that to avoid attacks, some browsers may truncate part of the HTML5 functionality. We are having again drive by attacks (some nasty thing sticks to your computer just by browsing a page, without interaction from you), again, by some crap in an ad banner that the administrator of the page had no intention of placing there (but the ad provider did not filter correctly). A browser may have implemented HTML5 in its own way and have some security gaps, and some other brand may implement its own HTML5 in some other way and have different security gaps. Actually there are more gaps to exploit, because there are more fish in the water, each one with its own problems.

What about compatibility? It is not unheard of about how each brand of browsers render the same data (mostly plain HTML) in a different way, which is why authoring tools used to design web pages have different previews according to different browser brands; there was also the case of some Australian store even charging a ‘Explorer 7 tax’, because of the extra effort required to maintain the page design so it would display correctly in that specific browser.

Unlike the Flash player, which is implemented by the same single company for every browser or container that can display Flash content, and making aside that HTML5 is not really a standard but instead a list of guides that are still changing today, each program that makes use of HTML5 may have a different implementation. Just as plain HTML, HTML5 is a series of guides and a list of instructions telling the vendor how those instructions should behave and what should they do, but each vendor may decide to implement or not a set of instructions, or may implement them differently having the same instruction a different result on each brand, or each device. If there was discrepancy on something as simple as displaying plain text in a box, now consider that HTML5 is way more complex and offers way more functionality across many more aspects than plain HTML.

Just as most common languages today, the instructions on both Flash and HTML5 are not just a plain list, but a set of different lists aimed at different kinds of functionality, and not all devices implement all sets of instructions (or as mentioned above, may not implement it in the same way). When an HTML5 script is running the first thing it has to do is to ask the host device which instructions does it support, and according to that, either the script may use its own functions, or decide to execute in a different way according to the set of instructions available.

On a related note, the whole Flash player is a single program (or plugin) that runs in a sandbox, and when it runs it retrieves the required resources and does what it's got to do between some boundaries; on the other hand, the way HTML5 executes in different containers may require different programs to execute different parts of HTML5 functionality; as example, you may require certain components to display video, and then again some different components, made by different vendors, to play sounds or to display 3D content. The HTML5 runtime may be a bunch of different components threaded together, using resources to synchronize and communicate between them, each one with its own requirements; this situation does not only add more overhead to the execution, but hogs more resources and adds security risks. Also note that HTML5 is interpreted, which means you write the script in English or something that looks like English, and when the browser starts running the script, it has to translate that English and check that it has no errors, and if it seems correct, build and load into memory the data required to execute; as opposed to have done that same process previously and give the player the binary data already processed.

So at least from a technical point, and making political speeches aside, there doesn’t seem to be any advantage in using HTML5 over Flash; then why would anybody come out and say that they should not use Flash because there was HTML5?

Time for another pee break, but just to clear out, Adobe is not paying me to write this, and chances are they don’t know I exist


(Continues from above) Have you noticed that in movie reviews, instead of having their own criteria many people just see what other people have written in other sites and then try to aim for the average of what they have seen elsewhere (so they don’t appear as if they don’t know what are they talking about)? One problem is that many of the sites other people copy are either owned by the same companies that release the movies or are controlled by the people that make the movies, so the reviews consist either in trashing the movies that compete with their own, or in praising themselves, so you end up with marvelous reviews about the remakes of Star Wars, or in reviews that trash things like Battle Angel for no reason, because the reviews are either written as self-service, or are copied from those reviews, and you end up with biased reviews all over the place.

One thing you have to be aware of is that press reports about some security flaws in some program don’t appear out of thin air; you read those in tech magazines or tech blogs, and many magazines and blogs copy those from other magazines and blogs, but they are not the ones that discovered the flaw. The report is handed to them by some experts that check for security flaws in different tools and frameworks, and those experts may either work for a company that researches the security of software in general, or a company dedicated to something else but which has its own agenda. It doesn’t mean that the flaw does not exist; it may mean that you are reading about it because it suits somebody else’s interests, and you won’t hear about the flaws of some other framework or tool or piece of software instead.

Many companies and brands have talked about the convenience of making aside the Flash plugin in browsers and replace it with HTML5; we may want to check those statements, and possible reasons why did those statements happened:

Mozilla has been one of the flag bearers of the no-plugins cause. To understand this, you may want to compare the security of a browser to the security of a bank-building; also keep in mind that Mozilla’s product is mainly a web browser (even though they release other things, this is why they are known for; pretty much as Apple is known for the iPhone).
A building with some values inside may have thick walls and other measures that surround the building, but it also has windows and doors and entry points, and each entry point is a vulnerable spot. You may take precautions like placing a guard in a door, but you are subject to the vulnerabilities of the person you place there as guardian. Same thing happens in a browser: if you place many entry points, each one of them is a point where nasty things may happen; it does not matter that you place state of the art security in one entry point, that will not make any of the other access points more secure, and you have to secure every single access point separately, and you have to use resources to coordinate all points and the flow between those points.
Making aside Flash will not make the other flaws go away, and it does not mean HTML5 will be more secure than Flash, but if you take away Flash, it will also take away its flaws; this means less access points to be aware of, even if the possible risks of other components still exist.

What about Google? Well, imagine how would you feel if your main business depended on displaying ad banners on web pages (and more recently, web videos using the same plugin), and those banners depended on a technology that was out of the reach of your control; you can not parse the code in those ads, you have to create special cases to display those ads and you have to make deals and agreements with the company that controls the player required to display those ads. Your solution? Release your own web browser, and move from being a bystander, to decide for everyone else what should and what should not be displayed on a web page, so nobody can mess with your business model. Not to say that Chrome exists because of Flash; this is more related to Explorer and the fact that Explorer was bundled from factory with the majority of PCs, and as mentioned above, the fact that Microsoft intended to monopolize the visualization of web pages; this placed them in a position where they were able to sabotage competing browsers or html code related to business where they may have a later interest on.

Speaking of which, it’s very probable you have heard about lots of security flaws concerning Java and Flash, but chances are you have not heard that much about .net, and unless you are a developer or a sys. admin., chances are you are scratching your head wondering what the heck is .net. Basically, .net is a Java clone; a little history background is required:
By the middle of the 90s Java was all the rage; it was a wonderful thing that would allow you to make a program, and run the exactly same program everywhere in the same way, without making changes or compiling again for different operating systems or different devices. Even before Flash, Java enabled interaction in web pages with its Java Applets (or diminutive for application, as ‘app’ was not hipster by then), which were embedded little programs made in Java. HTML was intended to be viewed the same way no matter where you were looking at it, and Java was intended to run the same no matter where you were running it, so this was a perfect combination to enable behaviours and interaction in web pages that should be seen the same no matter where.
That meant of course that Micorsoft wanted a slice of the cake, and came with their own Java, J++. The idea of J++ was that it used Windows-exclusive libraries, which once again, meant that they wanted to monopolize what was intended to run exactly the same everywhere. The problem is, Microsoft did not own Java, so they were subject to the Java license, and they were not allowed to do that. So what did they do? They poached people that worked in the design of Java (at first this was a selling point, later on they tried to kinda sweep it under the carpet), and came with their own Java but called it differently (C#), still using the same syntax as Java with the hope that current Java developers would have no problem migrating. .net is currently the basis of every Microsoft o.s., guided by the same Java principle that the same code should be able to run either on a desktop or in an embedded system; and of course there have been flaws in .net, some of them very serious; but you don’t keep hearing about how you should uninstall .net, which would mean to uninstall the whole o.s.

But just as Flash appeared on stage and the use of Java applets declined, it was a new cake that Microsoft wanted; but how do you compete with something that has a user base of more than 90% of existing devices able to run it? If you are Microsoft, you probably design a framework overnight, call it ‘Silverlight’, and install it by force, without user permission, in every browser installed in every computer that you can control, which by then was the large majority of PCs. Not only did all browsers from other brands uninstalled it the next day since it was a security breach, but part of the core of Silverlight was to be able to run .net dlls, in the same fashion as the infamous and by then deprecated ActiveXs (yes, that thing still used today to spread viruses through Office documents); it was supposed to run in a sandbox though, but what do you know, a flawed one. You would have been able to take control of every single function and data on the computer just by browsing a web page; lucky us that thing did not stick around.

On the same note, Google has been kind of a hypocrite with its ‘instant apps’. You have probably heard many times about how Android is the new Windows; it is the o.s. that runs on most devices and is not linked to a particular vendor, and it allows the same things to run the same way on different devices from different brands (Android apps are based on Java); still, its ‘instant apps’ mean that an app already installed can download executable code (something that is forbidden according to the terms of their own app store), and now an ad running inside a game can not only crash the game if not the whole system, but it can have access to more or less the same things as the game has access to; so don’t be surprised that just by running an ad, somebody has access to your camera, your local files, your global position, etc. Basically, instant apps are the new ActiveXs, and they only benefit some advertisers; not the user, not the developer of the hosting app, nobody else. It passes the cost to everybody else.

And not related to Flash, Java or anything like that, but since we are talking about Google now, it’s fair to say that Google has become quite useless in anything that is not a ‘pop’ search (pop as in popular, not related with any other kind of pop). If you look for ‘X’, unless X is related to gossip or the latest trend, it does not matter that there is a page with the exact answer for X and that it has been indexed; if everybody else is looking for Y it will tell you, you typed X but everybody else is looking for Y. Aren’t you wrong and weren’t you looking for Y? I will show you the results for Y instead anyway, and don’t insist, I will keep showing you the results for Y. And, if there are many possibilities for Y, unless is the one that everybody else is looking for, good luck. You won’t get any other result amongst possibly hundreds of contexts for Y besides of what everybody else is looking for and is a trend, even if all those results tell the same thing. A quick example that may or may not work where you are located, since the results depend on location: try searching for A1. Where I am, I got possibly about 50 search results before getting something that was not related to Audi A1 (mostly sites showing the prices for that car model, and not even the Wikipedia disambiguation page), even though that was not what I was looking for. Basically, it gives the same results that people resend through social networks. Even worse, the same criteria is used for all Google products, so instead of helping discover things, the search results are doing exactly the opposite, by burying content that is not a trend. That also means that Internet, which was supposed to be a global thing and everybody would have access to the same information, is now being clustered and you get results according to your location. I am not saying that Google is making this because they are evil; I am saying that they have become useless, at least concerning searches that are not the same that get pushed to me through social networks (I write this as an example, I am not a fan of social networks).

Continues below, hopefully the last post about this topic for now.

I place this here for no other reason that I kinda miss my old sites (the old versions of this site). They were ugly and cheesy, but they were special for me.
old VooDoo centerfold
(Continues from above) Concerning Mac (and Apple), we already know that Mac computers are the best of the breed and can do things nobody else can (despite running on the same hardware, made by the same third parties), and they cost that much because they are powered by fairy dust (catching and grinding fairies is not easy, you know). The statement about being the best is subjective, but at least concerning about being the best computers for development may be described as the computer that gets the job done in the best way, with the less hassle and at a better value. You may check which of the following statements are related to meeting that objective:

Being underpowered; and even though you don’t design the CPU and you use the same stock CPU that everybody uses, sell your newest devices with a previous generation of processors, or if the user wants a CPU of the current generation, charge it as an extra.

Things like a keyboard that feels like a toy, which also may get damaged or get they keys stuck with something as simple as a spec of dust; keep in mind that during the development cycle a keyboard requires heavy use. Compare previous statement to being able to go to a store, purchase a generic, large and sturdy keyboard that feels right when pressing a key and start working as soon as you plug it in, and if something happens to that keyboard or any other part, being able to replace it at a competitive price between many different models with different features.

Being able to repair your device in situ by anyone qualified or by yourself if you have the know-how, using stock parts that can be purchased anywhere; the alternative being to be able to repair it only by some specific vendor, at the prices they may charge which may be out of proportion for the same part if placed in any another device, even if anyone could do the repair as it uses the same stock parts as anyone else. To repair your device, you have to send your equipment to their shop, meaning that in the meantime you don’t have a development computer till it gets repaired; which also means downtime and not having the files of your project available.

Having to pay up to three times for the same hardware (the same brand and references) if requested as an option when purchasing the device, and having to purchase it all at once, as it does not leave room to upgrade later.

Having enough room and a way to place new parts to add new functionality as new functionality becomes available, or being able to upgrade current functionality. Or, use proprietary connectors, meaning that you can not just go to a store and buy the device or the part that offers the functionality you require and connect it to the computer, unless you use an adapter.

Make it more portable by shaving a few millimeters or even fractions of a millimeter by removing some ports and other parts, even if is going to stay still on a desktop most of the time. Lug an adapter to make up for the removed ports, throwing away the gain you may have got by shaving a few mms.

Valuing design more than function, which means that for example the computer may overheat because of a poor mechanical design (the air vents didn’t look cool enough), and to solve the overheating problem, cripple the already underpowered CPU performance.

Being able to browse wherever you want and run whatever tool or program you may need, compared to being able to run a program only if is signed by their store.

Having to pay one third of your profits to the store, even if they did not help in the development or added any value to the product or service being sold, or help in any way or share responsibility in keeping your program running, or keeping up the required services (like paying for servers if your program requires those).

There is no score for previous questionnaire, the result is obvious. Note that there was no mention of brands in previous statements, yet you knew which ones did or did not meet each criteria.

One of the reasons why some people say ‘they need a Mac’ is to run Final Cut Pro, which is a video editing program. Final Cut Pro was not developed by Apple, it was developed by Macromedia (later Adobe), so is Premiere Pro which is also a program to edit video and unlike Final Cut Pro, it can run everywhere. Flash is also from Adobe (but first it was Macromedia’s). Keep in mind that it was Jobs that said that Flash should not run in a cell phone, even if by then Flash was running in many devices, including cell phones.

What about the interface? We are told that Apple devices are easy to use and most intuitive than anything else; we can also check if that statement holds true:

At first they had a mouse with only one button; of course, you had to press different keys at the same time to execute different functions, in replacement of the lack of different buttons in the mouse.

Current laptops are controlled with a trackpad with no buttons (but then again the trackpad is a button itself); the actions are executed through a series of gestures you have to learn, and at least while you get used to it, guess which gestures do exist and which gesture does which thing (that is, browse Internet to learn how to use your own device). That, as opposed to viewing a button and guessing that this is something you can press to obtain a response.

Having different results according to the pressure you apply: how hard is hard? Where is the threshold? Can anybody (any kind of user) push with the different levels of pressure required for each action? Is it specified somewhere?

In a device with a tiny screen, even smaller icons. That, as opposed to viewing a descriptive image and explanation that makes use of the whole space available; also, for a device that is controlled with a touch screen, change from the gestures used to control other devices from the same brand, also controlled via a touch screen.

Controls that you have to guess that those are controls, because instructions or any kind of indication would not look cool.

A keyboard with no delete key, but instead many unnamed alternate function keys. In PCs there are [alt] and [control]; in Macs there are... how do you pronounce those squiggles?

Not being able to cut and paste a file to another folder, unless you open two windows side by side with the origin and target locations and drag from one window to another.

Not using a touch screen because is an unnatural way to interact with a computer (even if the development is targeted at touch screens), yet they have no problem in attempting to replace computers used in development with a device whose only way to interact is through a touch screen.

Those, amongst many others, would be a ‘no’ in any interface design book. The thing is, shiny does not get the job done, and doing things different just for being different does not help either; instead it complicates things for people who use different platforms and have to switch their minds as they switch the brand of the device they are using at that moment.

It seems that Macs are intended to consume and watch content rather than creating it. They are shiny and pretty, and look nice to show off in a coffee shop while sipping a gourmet mix (and maybe while pretending to write a book). Rumors that appear every once in a while where they intend to replace their current x86 CPUs by CPUs used in mobile devices (mostly to avoid comparisons with other brands that use more powerful CPUs of the same brand, as they did when they changed their phone CPUs), which would turn a Mac in nothing more than an overgrown phone with a keyboard (but no touch screen) seem to reinforce that idea, as well as the current Macbook Air having specs equivalent to those of a netbook, which is the most basic and inexpensive portable device from any other brand, and intended to consume content; that is, even though the Air is priced as a high end computer with high specs from other brand.

Actually, it has been like this since the Mac inception. The first Mac had only 128k RAM that were occupied mostly by the OS, had a tiny black and white screen, and had overheating problems because even though the original design included a fan, Jobs himself though the fan would look ugly when opening the box for maintenance (so it was removed despite the technical objections). It could not run much more than the included applications because of the lack of memory, and that was, if the user was willing to tolerate the constant disk swapping required to use services included in the OS disk. On the other hand, a few months later there were on the market computers like the Atari ST and the Amiga, which not only included a CPU from the same Motorola family and also a graphic operating system, but they (both) also included color graphics, more memory, and depending on the brand, either the MIDI connector or purpose specific processors for graphics and sound. It goes without mentioning that the Mac didn’t sell well, but the Atari ST and Amiga ruled the European market between mid 80s and mid 90s (in North America the PC was king). Also note that they were priced between two thirds and one third of the selling price of the Mac (the models that included a monitor, as the ones that could be plugged to a TV box were even cheaper), even though more powerful and more capable.

This may had to do mostly with Jobs personality; basically, he was impressed with technology and wanted to be part of the technology world, but he didn’t want to make any effort understanding it. There is an anecdote that he complained to Wozniak that he hated going to class because they obliged him to learn, to which Wozniak answered (paraphrasing) ‘yes, that’s what they do in college’. Later he dropped out, became a hippie because that was supposed to be equivalent to being knowledgeable (be one with the universe) without making any effort and the rest is in the history books. The thing that made Apple (and Jobs) successful may have to do with something I call ‘the Matrix syndrome’. When ‘the Matrix’ movie came out, everybody wanted to see their screens with green squiggles dropping from the top of the screen. It meant nothing, but you wanted to have those, and if you did, you felt like a hacker and above the rest of uninitiated ones; same goes here: it is not whether you need to use the computer, if you have a purpose for it or if you can do the same thing with any other device; you don’t need an excuse to use it (even if just the included apps) and play with it, do things that look out of the ordinary for people who don’t work in that field, and now you feel part of the technology world. And of course is shiny; that means you are elite.

Concerning Apple phones, we also know they are the best and can do things no other phone can do. They have the best screens, the best sound and all the best stuff you can think of. You may or may not be aware that those best parts that go into an Apple phone are made precisely by those other brands; they do not make the parts, and the cost of placing those parts on their phones is higher. If Samsung or LG make the screens for Apple as well as their own phones, when they place those screens in their own phones, they place those parts at the cost of selling those parts to somebody else. When Apple places a screen made by Samsung or LG in their phones, they don’t get them for free; there is part of the cost that goes as profit for Samsung or LG, and the cost of Apple getting a profit as a percentage of the whole cost of the device, including the profit of each provider. You are not ‘getting more’.

So far it seems like the statements about Apple products are more like a sales pitch, and you should keep that in mind concerning Mr. Jobs statement about Flash and phones.

Imagine this: you could post a fully interactive and complete game, with the same functionality as you would get in a phone app but posted in a web page, and anybody who could watch Flash content would be able to play it. You could have your own business model, without paying a sales commission for everything a user would do in your game (or any other kind of application), or without paying them for in-game purchases or publicity displayed in your app.

Or imagine this; you could do a battle game where you did not have to pay a company that had nothing to do with the game development or marketing, or that added any value to the game itself or the user experience over what other brands offer, just because. You could have done just that by placing your game as some Flash presentation in a web page.

On the other hand, imagine that you could watch the same interactive content that everybody else could see in their own devices; what would be so special about your device? What would be the fun if it can do the same things as anyone else can do in their own devices from other brands?

But this is not something just companies do; it goes as high as countries themselves. Remember some time ago when a Samsung Note model had a battery problem and it was forbidden in USA related air-flights? A few days later, when there were lists of incidents reported of iPhones also exploding, also because of the batteries, suddenly explosions of cell phones were no longer a security threat. You see, the problem with Samsung was in one phone model, and not the one that sells more for the company; Apple does not have that many models in their catalog, so if they applied the same rule on Apple (you could not take a plane as long as you carried an Apple phone) it would have gone broke. Apple is a company from USA (at least the brand is, or is considered as an USA brand), so of course, it is not a threat if an iPhone explodes in a USA related air-flight.

More recently there has been the situation with Huawei. A short summary of the situation: some time ago USA requested to other countries that they did not buy equipment from Huawei under the suspicion that they may help China government to spy other countries; some countries followed with it, some others didn’t as there was no proof that they were spying. Since the end of 2018 the Chief Financial Officer of Huawei, which happens to be the daughter of the proprietaries of the brand, has been in domiciliary arrest or under surveillance in Canada by request of USA, because Huawei sold in Pakistan some devices against some USA embargo policy. In may of 2019, Huawei entered a USA black list, once again under the suspicion of helping China government in spying USA citizens; the thing is, it is still a suspicion (the situation is no different than one year ago), and they coerced other countries and companies from other countries to block all continuing business with Huawei, and if a USA company did have business with them they would be prosecuted. The thing is, there was no need to place them in a black list till this graphic was published:

Phones Q1 2019

What the graphic says is that in the first three months of 2019, Huawei increased their global sales by 50% and Apple declined theirs by one third; also that Apple lost the second place in global sales to Huawei. You see, there would not have been suspicion of spying if they weren’t the most advanced in 5G networks so far, and they are a threat if the sell more than Apple, otherwise who cares. Also, since they are from China, they are spies; otherwise who cares about things like tracking users without notifying them or tracking by IP or location or even without starting session and agreeing to the terms of service just as Google does, as long as the company is from the same country. What they are showing is that they were not able to compete with technology, so they have to look for other ways. On the other hand, iPhones are made in China, and moving the production to USA would increase the cost of each phone over U$200 (that is a low estimate actually) to obtain the very same product, and China has most of the reserves of minerals required to make things like electronics and screens, so it may not have been the wisest decision.

Ironically, while a phone exploding in a plane is a risk if the phone is from a foreign brand, the planes themselves are not a threat even if they have design errors, as long as the company that makes the plane is from the same country. There was negligence on the treatment of the Boeing 737 failures for a long time, with complicity of the USA government, because they had to win the global market for that segment (by selling planes they knew they were defective).

And then again, the USA government that has been enabling and inducing all of these behaviors is the same government that removed the net neutrality because of some private interests that are not even clear (the companies that actually add most to USA income were in favor of keeping neutrality), after other people had been defending it for a long time.

So what is the lesson here: stop using Microsoft and Apple products because you are a tool, start using Flash in web pages once again? No, not really. Flash is not made by the browser companies; is made by Adobe, and to use Flash in a browser that would require the browser to enable plugins. Not just Flash, but plugins in general (‘why theirs and why not ours’). We’ve been there, is not nice. And you probably can’t leave Windows or maybe Apple if you develop for Apple devices, or at least not for now; it is not as if you have a choice. Yes, there is Linux, but not really; Linux may be the undisputed king of backbone, but in consumer-level, we have to start with the question: which Linux? There was a time that Linux versions were appearing everywhere in the wild, some of those were not compatible with others, and you had to download the source of the program you wanted to run and compile it yourself since the binaries of one brand of Linux would not run in another brand.

God kills a kitten

* Every time God kills a kitten there is a new Linux

We must endure companies like Microsoft and Apple at least for now, and maybe the ones that follow will behave in a similar way, since they are companies and they are there to make money. But be aware why companies do what they do, and be aware of the choices available. That’s all for now.



© 2012, 2013, 2014, 2019