« June 2008 | Main | August 2008 »

July 31, 2008

New homepage + abuse statistics

Made a new homepage yesterday. It uses a jQuery plugin called Cycle. Just view the source and browse down to the DIV@id="frontpage" section. This component also supports the WIDE mode that you can select from the menu. Really compact and easy to maintain.

One important thing you must understand is that jQuery and Prototype both implement the $("shorthand") selector. You simply override this by calling jQuery.noConflict(); and then using the jQuery namespace instead of $("").

And here are some abuse statistics.

labs.teppefall.com
12172 IP's are blacklisted.

UNIQUE IP's
1: USA 46%, 2: Korea 5,3%, 3: Japan 3,8%

HITS
1: USA 58%, 2: China/Hong Kong 6,2% 3: Russia 2,7%

July 30, 2008

Cute girls are now more tech savvy than me

Watch Burt Rutan (Scaled Composites) on iJustine's QIK stream showing off "Eve".

And.. just in case.. cute can be replaced by "intelligent", "smart", "clever", "well read", "organized", "impressive", "normal", "standard", "some", "random", "one", "a" and many other words and articles in the English dictionary. But I'm tired right now and "cute" sounds better as a title. So there ! Man Power ! Bææææ !

July 22, 2008

AMF.. huh?

This is my comment to Bruce Eckel's post Does Anyone Really Care About Desktop Java?. I really enjoyed the honesty in the comments and recommend that people read them.

Swing is difficult because it tries to solve difficult problems. Flex is much more specialized and supports a small subset of Swing's features. If you think Flex competes with Swing you probably also think that “web operating systems” done in Javascript and HTML competes with Windows and OS X. Yes, you can replace a Swing application with a Flex application if the application fits within the feature specification of Flash, but Swing is more similar to QT than Flex.

I don't understand why Bruce Eckel complains that the “Java UI was an afterthought”. Flex is a GUI framework built on top of the Flash animation engine. Sure, Adobe Flex developers have been able to scrutinize competing products for many years and have created something that is simpler to use, but why is this surprising ? Should Adobe create a new framework that is harder to use than existing frameworks ? Flex has a Java compiler, a Java IDE and a Java based message server. Everything is Java except the Flash player and the code that runs on the Flash player. Adobe uses Java, but Bruce Eckel recommends Python, AMF and Actionscript wrapped in XML. The nerd factor is a bit too large. I'm tired of people who solve extremely narrow problems and then proclaim that their mindset is the solution to all problems. It's like listening to 16 years old children who complain that the airplane seat is not perfectly molded to their body. Programming is all about compromises. A perfect language would be a failure because 28 people would program in it. Like, try moving dirt using only Formula 1 racing cars. A stupid pre-WW2 truck would outperform you. The reason I bring this up is because Actionscript is basically a Java clone and the Java Closure debate is mostly based on experience from scripting languages. People are bitching over problems that are so tiny and borderline subatomic that it makes you wonder if these people ever produce any working code.

Bruce Eckel also uses Flex “because I'm not trapped using a single language for the back-end logic. “. Yes, because all Swing developers know that SOAP, XML-RPC, CORBA, REST, JSON, JDBC and plain old sockets traps people into one language. Oh no, there is no language agnostic secure RMI. We're all doomed, doomed I say. I recommend that everyone uses Flex (it's open source) and when you fail in producing a high quality product, you blame yourself rather than the framework you're using. He then even forces Ruby on Rails into his rant as Google bait. Jessica Alba. Hayden Panettiere. Scarlett Johansen. Naked naked naked.

I must admit that I sort of mistrust popular frameworks. The hype factor is just too much for me. UI work is hard and Flex makes easy things easy. There is no revolution here. The reason he compares Swing with Flex is because if you compared Flex with HTML based web applications, Flex would look retarded. You lose many of the important features of the web so that you can create something that might look like a desktop application. Comparing Swing with Flex is a smokescreen designed to obscure a long list of problems related to Flex development.

Flex developers reminds me of those DHTML developers that we had a while back who all made a different scrolling component for their website. I've even done that myself. Sure, a lot of these things are cool, but nobody really wants to use stuff like that for real work. DHTML scroll panes eventually just piss people off. Hopefully Flex developers will fix their components over time. I'm tired of moving the scroll wheel 20 times in order to view ten items in a pretty animated list. And why is everyone creating fixed width Flex applications ? Is resizing something now considered too advanced ?

I like Adobe AIR and have no hate towards Flex or Flash. I own and use the Adobe CS3 Web Professional Suite which includes Flash Professional and I've been playing with both the Flex and AIR SDK. Use whatever technology makes you happy and that fits your needs. But how can I take Bruce Eckel serious when his Python and Flex code example has 17 lines of user interface code in it ? I could create 10 000 lines of code and then support his 17 lines of code and my framework could still be completely useless. Such a small example says very little about Flex. His Flex “user interface” is what I would call a console application.

I don't want to sound arrogant or defensive since it might sound like I'm defending my own software. I'm not. There is very little interest in my development software and I've pointed this out before. But this is not a big problem for me, since my tools are just in-house tools that I've made public. They're basic because I'm not targeting entry level developers. You need years of experience to understand why my tools exists in the first place. I built them because I had no real alternatives. So Eckel has a good point when it comes to tools support.

There's not much interest in Swing right now. And the reason is very simple. Java 1.6 is pretty much bug fixing of 1.4 desktop API's. We desktop people had to sit back and watch Sun rant about web services, generics, syntax, cool threads and other irrelevant crap (from a desktop perspective) while our applications suffered from ugly fonts, slow startup, stupid API's and mind numbing *cough* Web Start *cough* bugs.

Java 3D, Quicktime for Java and the Java Media Framework are all obsolete. Java Mail and Activation is not maintained. Java Sound was one guy. Bluetooth ? Huh ? And on and on it goes. And then JavaFX is the solution to all this ? Java 1.6 is fantastic compared to 1.4 when it comes to desktop API's. But very few people care. Only people like me who have megabytes of Java code even notice that Java on the desktop is getting better. One thing I can tell you about Adobe Flex and AIR is this. Look at how many times they've broken the API. Then compare that to Java Swing. Sticking with old API's is hard work. Creating new shit is easy.

If you need training wheels on your bicycle, then use Flex. If you got a hairy chest use C++ or Objective C with native API's. And if you have no money, like me, use Java.

PS
Ah, man. Almost made it through without trying to be funny. I need to work on my professionalism. Damn the American version of The Office.

PS PS
I know smart people whom used Flex all the way and still bombed financially. Even if your product is fantastic the competition is just brutal. If Google/Yahoo/Microsoft/Facebook/Myspace creates a product that's 80 percent of your product, you're pretty much dead. Stop blaming frameworks all the time. Business is half your company. The other half is code. Many of the most heated forum debates on the Internet are about super-irrelevant issues.

July 11, 2008

Friday rant

Every single month a billion dollar company evaluates my software stack. I can tell because they read more pages than Chinese web cafe surfers and computer criminals. It happens with such regularity that I can only assume that this is some form of company due diligence when it comes to new software. But this almost never results in any income for my company. The industries are Defense, Aerospace, Medical Research and Publishing/Print. Which is a far cry away from the industries I though I was targeting. I've been trying to crack into small business and consulting. There is always some random application that has to be done as a desktop application and I though that this is where my customers would be at. Maybe I was wrong.

I just find it mind boggling how the industry is piling more and more crap into web browsers simply because all their developers are web developers. And I really don't understand why companies such as Salesforce can get away with calling their software “No software” solutions when their entire business model seems to be based on data and API lock-in. Has Microsoft really tainted the industry so much by allowing computer criminals to run free that people trust the web browser more than operating systems ? This would explain why Google is getting a free ride when it comes to privacy invasions and why Apple users love niche software. The web browser is “safe” while anything “Made for Windows” is a computer virus, a Trojan horse or DRM. This is not the reality, but people's perception might be something like that. The pathetic security record of Windows has simply driven people over in hordes to web based applications. They're not used because they're efficient, but because they pose a smaller threat to operating system integrity and gives the user more advanced collaborative features. Remember that most users can't install a WIFI connection without sharing their Internet porn collection with the entire neighborhood.

Just look at Facebook. Is Facebook a social application or simply a new email inbox protected by your social connections ? Are young people using instant messenger, Twitter and Facebook because they're effective, or because their email inbox is the new garbage bin ? Last week there was a lot of noise about how spammers where using Xin Net and Beijing Innovative to register domain names. Well, people don't understand the primary problem when it comes to spam. Spammers are in fact irrelevant. Yes, 90 percent of spam is from a small group of spammers, but the reason we have so much spam is because of domain name speculation companies and because of Trojan horses designed for Windows. Automated speculation without human oversight equals automated abuse. The spammers are now simply switching from Chinese domain name companies to ones based in Hong Kong, Russia and Brazil. It took the spammers 24 hours, from when Xin Net and Beijing Innovative was outed, to jump over to other companies. The problem is not the spammers, but the whole domain name registration industry. Killing spammers with sticks and stones has no effect, since the problem is bulk registration systems. Spammers are like terrorists. A great excuse for gross incompetence. Iraq is rampant with war profiteering, a huge crime, but nobody cares because “the good guys” are making money. This is the same problem that exists in the Internet economy. Nobody wants to kill the cash cow. Who cares about spam when “domain name holding companies” are making $100 million a year from nothing. You can be in court for years with that kind of money.

Google's stock price took a dive a while back when it was disclosed that the credit crunch had resulted in fewer people clicking on their ads. What people seem to forget is that every time Google closes a click fraud operation their click count goes down. So you can argue that the stock marked wants click fraud, because it drives the stock price higher and higher. Google's earning statements are inflated by robots, but nobody cares if they own Google stock. And advertisers sees it as “the cost of doing business”. But eventually Google has to ban a thousand new IP addresses and then report that their quarterly earnings are slipping because they try to be the good guys a.k.a. non-criminals.

Everything is economics. Nothing is free. Free is just the dispersion of cost over a large population by selling their privacy to the highest bidder. Google gets away with it because they give away a lot of free services. Microsoft gets yelled at because we have to reboot our computers all the freaking time because of security patches. And Apple ? Today I have to install iTunes again for the millionth time. Some say it's because of security, some say it's because of DRM. Who knows. Spam, invasive DRM, identity theft, denial of service attacks, click fraud, Trojan horses, viruses – all consequences of narcissists who wants everything for nothing and who can't tell the difference between freedom and anarchy.

Now, where are my nuts ? Ah, nuts.

July 09, 2008

Capture 1.0 is almost done

The user interface is done, but so far I've only got one working video decoder. Trying out some new Quicktime code today, but my expectations are low since the entire Quicktime Java API is basically EOL. And JMF ? I can't even install it properly and the device search just hangs. I might have to code another decoder in C++ or C# and bridge it over JNI. Grumble grumble.

Teppefall Capture (36).png

Teppefall Capture (38).png

Teppefall Capture (37).png

July 08, 2008

The List

This is a list of features that Sun Microsystems has to implement in order to become a serious contender in the rich Internet application (RIA) and mobile marked. Failing to support all these items will result in total failure.

  • Play and record audio. MP3, MPEG4 and OGG.
  • Play and record video. Including capturing and streaming live feeds from web, DV and cell phone cameras. Nobody cares if the codecs are proprietary and not open source.
  • A JavaFX “look and feel”. Maybe based on Synth ? Ebay wants Ebay colors. Media branding is crucial, but giving the developer too much freedom might result in an ugly platform. Mobile users prefer a standardized look. Desktop users have huge CPU's and GPU's and don't care about performance as long as the application is cool. Several look and feels will probably make mobile users angry.
  • Asset management. If I got 60 AI files with vector graphics and 12 PSD's, how long does it take me to update my JavaFX assets ? Hours ? Minutes ? Seconds ?
  • A web browser component with deep API's. DOM access is required. Cell-phones doesn't really have to support this.
  • 3D and animation. People want tactile and dynamic user experiences. Everyone talks about 3D, but very few actually use it because it's complicated and resource intensive. But the wow factor is always there. Microsoft tried to sell Vista on the “wow” factor and found that most people had laptops with integrated graphics and stamina mode enabled. The “wow” turned into “suck” real fast.

What is this list based on ? This is simply the combined current feature set of Flash, AIR, Nokia/Symbian and the iPhone. Even mobile phones are now more media savvy than Sun's default JRE.

Nobody, and I mean nobody, gives a hoopla about JavaFX documentation, compilers, example code and future developments without these media API's implemented one hundred percent. Without media JavaFX is Pow-Ray on Irix. With media JavaFX is maybe Lingo on OS X Jaguar.

If Sun choses not to implement these features, then JavaFX is just an emotional response to Google Android. Java ME is the only successful "media" API (games) Sun has ever had and now Nokia, Google and Apple are all trying to take over this marked. The seven people who write vector graphics in JavaFX will never create an economy big enough for people to start making money on consulting deals. And therefore the project is lost before it even reached 1.0.

This website is all about alpha and beta software

Download non-beta software here