March 13, 2011
February 13, 2011
The modern web application
January 12, 2011
Designing for touch devices and HTML5
I forgot to mention it, but Teppefall DevGrid looks the way it does because it has been designed for mobile devices and tablets.
The clue to getting it right is this HTML meta tag:
<meta name="viewport" content="width=device-width, user-scalable=yes, maximum-scale=1.0"/>
You also need to use min-width and max-width CSS values instead of fixed values and sometimes use percentage based layout that floats to the left. I also add extra CSS if a mobile device is connected to reduce vertical space requirements. Overflow rules are used to hide wide images.
January 11, 2011
Introducing Teppefall DevGrid
This is the first "cloud based" product from Teppefall. More information will come over the next couple of months. It runs on Google AppEngine and is standard J2EE plus a few Google extensions. JavaMail, Twitter4J and XMPP works great.
January 05, 2011
Sneak peak - HybridKit
Alpha product. Even the website is alpha. Teppefall HybridKit coming soon to a device near you.
July 14, 2010
Java 6u21 DownloadServiceListener example
Testing out the 1.6.0_21 new progress-class attribute in JNLP.
What is funny about this new release is that all JavaFX developers must PAY MONEY to run their code. Or they get this message. Or maybe I am wrong and screwing up cross domain issues. Who the heck knows. This is the second or third time they pull a move like this without writing any advisories on it.
It is also funny how clicking YES and NO both hang my software. Is someone making assumptions about threads ? Silly me ?

You can see the new DownloadServiceListener loader function here . Media player and 3D is now broken because Sun changed the rules... again. If nothing happens you might have to clean the Web Start cache. You must run Java 6u21.
June 30, 2010
June 18, 2010
Compete.com is pretty good
Comparing website traffic with Compete.com. The primary website is not included in this though. Pretty good for indicating trends, but kinda useless when assessing real, day to day, traffic volume.
The Analytics data is only from this website. Normal traffic went from 30 uniques a day in 2009 to 150 in 2010 with short spikes of 2000-5000 uniques per day. 50 percent of traffic comes from search engines.

June 16, 2010
Software update
Fixes incorrect Info.plist version information on Mac OS X. Teppefall Software Download.
April 29, 2010
Swing XML layout with no dependencies
This article is a continuation of my article about how to start a Swing application. You must download the Teppefall Layout tool to create the correct XML. If you do not want to use this tool (trial is free), you can also use the XSLT files found in the "transformers" folder instead.
This will only work if you remove the Teppefall API's from the JXML. JXML is simply short for Java XML, which is a standard object serialization format in the JRE. The ViewImporter.test method should be called on the Event Dispatch Thread (EDT). In other words, on the Application.create method in the previous article.
April 27, 2010
Blowhard blogging versus professional writing
People interested in EDT compliant object creation in JFC with source code.
30 developers.
People interested in me ranting about current events.
8000 developers.
You need a blog to exist on the Internet because of how search engines index material. The problem is that the value is very low because people do not link to you with the correct keywords. And even if they did the related-content industry would probably outrank you anyway. And this is why many businesses try out the social notworking angle.
Continue reading "Blowhard blogging versus professional writing" »
April 16, 2010
Always remember the about page
Maybe this is obvious for most people, but I can not stress this enough. You must create an about page and that page must contain actual "about whatever you are" information. Because so many people click on that page it is not even funny. So much traffic went to my about page last month that I thought for 10 minutes that I was under a denial of service attack.
January 18, 2010
Teppefall releases brand new Norwegian language website
Go check it out at http://teppefall.no. Very sparse, but developing software takes time. The underlying tech is more interesting though. This is the first Teppefall system based on Xen and hot deployment. Still using dedicated hardware, but trying to reduce cost. So far the experience has been rather bad because of tons of SSH problems. Hopefully this will be resolved.
January 16, 2010
64bit support is coming
Supporting 64bit is not very important when most of your code is in Java. But Teppefall does have around 300kb of C++ that needs to be ported. And the process is something like this.
- Install crazy big Windows SDK and Visual Studio on Windows 7.
- Realize that the Windows documentation is wrong when it comes to "vcvarsall.bat amd64".
- Dig around for a while.
- Find the correct BAT based configuration files and drag them into the application menu.
- Create custom makefiles.
- Scratch your head as Microsoft uses the suffix "32" in paths and library names everywhere.
- More mind numbingly boring rewriting of makefiles.
- Everything compiles, but Winsock related code is broken. Might be configuration. Might be worse.
- Realize that 64bit JRE writes a registry JVM value that points to a non-existent file. My fault ?
- But the code supports that, so just use TEPPEFALL_JVM variable.
- Success!
Itanium support is probably not happening. The compiler can't find "Windows.h" under the IPF configuration and that's kind of a problem unless I want to dynamically load every method. 64bit Windows 7 also seems to crash some plug-in based systems. They keep changing the security model and developers are behind all the time for some reason. Although, the same problem exists on 64bit Linux. Which is stranger since 64bit compiler support is just a GCC parameter away.
December 17, 2009
Teppefall releases Spotify and Twitter powered music site
Platespiller.net is a 100 percent meta-music service based on web services. This means that Teppefall depends 100% on external content providers and that the service can be altered or shut down at any moment.
Basically, this is just an experiment. It's all about learning new things. Platespiller.net is targeted at the Scandinavian marked. The idea is to think of music as social objects that move from friend to friend through the social web. There are no plans to support Facebook or Myspace integration.
This product is a work in progress.
Spotify links
http://platespiller.net
Twitter search
http://open.platespiller.net/twitter?q=%23nowplaying
December 11, 2009
Which one is Swing and which one is WPF ?


The volume component gives it away. But Silverlight 4 may change that.
December 10, 2009
Sun is missing out on a huge opportunity

By being hell bent on "finishing" JavaFX instead of augmenting Swing Sun has more or less destroyed their credibility as a desktop platform company. The reality is that Swing plus a scene graph, accelerated layers and a new media framework is more valuable than the entire JavaFX ecosystem. Adobe, Microsoft, Apple, Opera, Mozilla and Google all believe that XML is the future of layout and yet Sun believes a non-standard syntax based on Lisp and JSON is the way to go. And the fact that C#, Actionscript, Dalvik and Javascript are all Java clones seems to indicate that Java is just fine as a user interface language. Adobe even exports twine animation code as XML and vectors as SVG. I sit here working in Adobe Creative Suite and wonder what Sun is thinking.
Continue reading "Sun is missing out on a huge opportunity" »
October 19, 2009
Teppefall Hybrid released
Hybrid is a component API for developing Swing applications. Instead of writing Java code from the start, you simply write a layout file and an application manifest file. Both are XML files. You then export the user interface assembly in Teppefall Layout and start adding Java or Javascript code. The application manifest format is almost identical to Adobe AIR application.xml files.
You only need Java skills if you want to deploy in a web browser. Compiling Javascript is possible, but dependency problems might bite you in the ass later on. Rhino changed their threading model once and that really confused the heck out of me.
Teppefall SDK 20091019 (Windows, Mac OS X, Linux, Solaris)
September 10, 2008
Java 1.5, VmPrefetch, LCDTest
All software except the SDK has been updated. Tons of minor fixes and the compile target is now 1.5. Yeah, yeah, I know. I needed to support OS X Panther.
Also releasing some new software. VmPrefetch is a simple VM prefetcher that should be run on startup. Nothing fancy yet, but I'm reading up on the latest instrumentation API's, so it might get smarter in the future. Currently this has a high snake oil factor, but I'm too arrogant to care. This is still not a 1.0, so user beware.


Create a shortcut and move it into one of these folders. Or just run it from the desktop.
Windows Vista
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup
Windows XP
C:\Documents And Settings\All Users\Start Menu\Programs\Startup
OS X
Right click on icon and select “Open at Login”.
LCDTest is an updated version of the demo application that is included in the SDK. Very few people will find this too exciting.

August 06, 2008
Media Player
Testing out the new JMC code. Not a good start. The only codec pack that works well on my Windows XP system is CCCP. What is CCCP ? Exactly ! How can JMC become a success when every single “mainstream” codec doesn't seem to work ?
Maybe my system is all screwed up ? Who knows.

March 30, 2008
My software download statistics (Windows VS Mac continued)
March 2008
| 1. | /data/Colorspace/1.9/MacOSX_Colorspace.zip | 297 | 55.10% | |
| 2. | /data/Colorspace/1.9/WindowsUnix_Colorspace.zip | 107 | 19.85% | |
| 3. | /data/Darkstar/20080303/WindowsUnix_Darkstar.zip | 25 | 4.64% | |
| 4. | /data/TeppefallLayout/3.6/WindowsUnix_TeppefallLayout.zip | 21 | 3.90% | |
| 5. | /data/TeppefallFX/3.6/WindowsUnix_TeppefallFX.zip | 17 | 3.15% | |
| 6. | /data/TeppefallLayout/3.6/MacOSX_TeppefallLayout.zip | 17 | 3.15% | |
| 7. | /data/TeppefallFX/3.6/MacOSX_TeppefallFX.zip | 13 | 2.41% | |
| 8. | /data/Cases/1.1.3/MacOSX_Cases.zip | 11 | 2.04% | |
| 9. | /media/network_app/network_app.zip | 5 | 0.93% | |
| 10. | /data/TeppefallLayout/3.5/WindowsUnix_TeppefallLayout.zip | 3 | 0.56% |
Pretty good for a guy with no advertising budget and mediocre language skills. These statistics does not include external download sites. Notice all the Mac downloads.
March 19, 2008
Writing Teppefall applications in Javascript
It was never my intention to write Teppefall applications in Javascript, but here is a simple example on how to do it. The update system, the DSR (Teppefall Runtime) launcher and some Application logic is not available at this time because of dependency problems. It is hard to use Javascript when the concept of a Class is replaced with something else. And working with all kinds of adapter logic is also pretty confusing.
If you want to run this example, just move the /network_app folder into the Teppefall SDK root folder and run Network.cmd or NetworkOSX.sh. This demo showcases plugins, the taskbar icon, layout and basic setup.
You have to download Teppefall Layout to get the original layout file used in this example.
Teppefall SDK Javascript example: network_app.zip

Continue reading "Writing Teppefall applications in Javascript" »
March 03, 2008
FX, Layout, Colorspace and the SDK has been updated
Here are the changes.
Teppefall Layout 3.6
Teppefall FX 3.6
Teppefall Colorspace 1.9
Teppefall SDK (Darkstar) 20080303




Continue reading "FX, Layout, Colorspace and the SDK has been updated" »
February 27, 2008
Teppefall Capture – From prototype to application
There is a lot of tricky logic in this application that is not so obvious just by looking at some screen shots. There are the delicious differences between Windows XP and Vista on how they deal with shared native libraries. There are minimum two gotchas. One, if you link against stuff like Visual C++ or MingW32 G++ you must add the C++ library to your application base path on Vista. It will not work the way it does on XP, where the DLL can just be on the system path. Second, any custom JNI library must be added to the system path before a VM is created. Just setting java.library.path will not work on Vista -if- the path is not the base path (“.”).

Continue reading "Teppefall Capture – From prototype to application" »
February 24, 2008
Introducing Teppefall Capture
This application is still a work in progress, but I am tired of keeping it a secret so here is the dirt. Teppefall Capture is a simple Photo Booth clone. By simple I mean it is built on the FX/Layout stack, has an OpenGL powered live preview (JOGL + TextureRenderer) and gets its video feed from a custom video capture library.
.png)
November 06, 2007
Colorspace 1.7, FX/Layout 3.4, SDK 20071105
Colorspace updates:
- Support for two monitors !! (thanks to Quaqua/Werner Randelshofer)
- CMD and SH files have the correct Darkstar parameters.
- Added a button that displays the pop-up menu.
Teppefall SDK (Darkstar) updates:
- EXE parameter -Xgraphite. The Graphite look and feel is faster than Titanium LAF.
- Linux executables.
- Linux shell script updates.
- Windows command script cleanup.
- Executables now treat all applications the same way.
- Substance 4 - Non-active menu color corrected.
- Substance 4 - Disabled menu item color corrected.
- Substance 4 - Color field no longer have dots in it under a dark LAF theme.
- DSR supports the new EXE files. You can now use -Xgraphite and -Xchrome on the DSR executable.
Continue reading "Colorspace 1.7, FX/Layout 3.4, SDK 20071105" »
November 05, 2007
Colorspace 1.7
October 01, 2007
Colorspace 1.6, Layout 3.3, FX 3.3 and Darkstar 20070930
New features:
This is a library update with some compatibility fixes.
- Substance 4.0
- Rhino Javascript 1.6
- BSF 2.4
Continue reading "Colorspace 1.6, Layout 3.3, FX 3.3 and Darkstar 20070930" »
September 27, 2007
Memory leak update
The memory leak seems to affect Windows XP as well, so I can only assume that this is a problem on all platforms. You are only affected if you run under -Dteppefall.chrome=false and you can probably stop the problem by setting -Dteppefall.cursor-monitor=false.
Example:
java
-Dteppefall.cursor-monitor=false
-Dteppefall.chrome=false
-Dteppefall.override=true
-Dswing.defaultlaf=com.teppefall.ds.look.TitaniumLAF
-jar darkstarlayout.jar
September 11, 2007
Colorspace 1.5, Layout 3.2, FX 3.2 and Darkstar 20070905
New features:
Colorspace supports the scroll wheel. One NPE fixed. Both fixes by Luan. Decimal values are written to standard output when the decimal check box is selected. 200-500ms shaved off About dialog launch. Colorspace no longer runs under a security policy since it causes to many problems on OS X.
Darkstar applications now have focus aware menus under Titanium LAF. A feature from the stone age. Just use com.teppefall.ds.Application in the same way as before. This means that the foreground color of your menu goes dark (under Titanium) when the JFrame loses focus.
The DSR executable supports the -Xchrome parameter. This turns on the native chrome and is the same as -Dteppefall.chrome=true.
DSR can launch multiple applications at the same time. Just add a comma separator between class names. A word of warning though. Running threads might block the shutdown process, so closing down resources on application exit is paramount. Note that DSR today has a very high probability of not closing down properly.
Other issues:
If Darkstar FX is unable to create HTML and thumbnails you should try the -Xinsecure parameter. FX and Layout run under security managers and can fail if the policy file is not perfect. Strange problems when running under DSR might also be a result of the security policy.
Continue reading "Colorspace 1.5, Layout 3.2, FX 3.2 and Darkstar 20070905" »
August 27, 2007
Titanium on Vista
I found this excellent screenshot tool today. So I tested it out. All applications are running on Vista with the -Xchrome parameter.
Teppefall Darkstar EXE parameters for Windows.
- -Xchrome - Turns on the native chrome.
- -Xnative - Windows look and feel.
- -Xinsecure - Not running under the DSR security policy.
Colorspace
.png)
Darkstar Layout
.png)
Darkstar FX

August 05, 2007
Big summer update
July 16, 2007
Vista compatibility
Those of you who get the "msvcr71.dll missing" error message should copy msvcr71.dll from the Java VM bin/ directory into the base directory of your Teppefall application. If you get a "Registry Not Found" error you need to install Java.
July 08, 2007
New updates
Colorspace 1.3, Fabric 2.8 and Surface 2.8 is available in the data folder. I will update the download page tomorrow. Colorspace now supports the taskbar, Fabric is less retarded and Surface has a new loader icon + hex color to STDOUT fix.
June 21, 2007
Surface 2.6, Fabric 2.6 and Colorspace 1.1 out now
All Darkstar applications now check for updates.
May 20, 2007
Surface, Fabric, Darkstar and Park updated
Get it while it's fresh. 250kb of source code examples are included in Darkstar in the form of Subpixel, Massive and Cases. I would like to stress that the code is very old (2003) and that is has a lot of wierd coding practices in it. I don't think you will get hired by showing it as example work :)

Continue reading "Surface, Fabric, Darkstar and Park updated" »
May 14, 2007
Huge update - Fabric/Surface/Darkstar
Tons of polish. Windows versions should be awesome.
Mac versions might have some problems :( Shutdown logic might be borked more than before.


