Coding

You are currently browsing the archive for the Coding category.

Rotor 2.0 is out.

Eric Albert notes that Rotor used to support Windows, FreeBSD and Mac OS X, but is only supporting Windows in its latest incarnation.  Rotor is Microsoft’s shared source .Net implementation.

Now, I don’t think Microsoft has any real obligation (or business reason) to port .Net to other platforms, but I wish they would, with no strings attached.  With a lot of help from Sun, they managed to really hurt Java’s chances for becoming a contendor for Windows GUI apps and, to make up for that, I’d really appreciate it if they made it super easy for .Net GUI apps to be cross platform.

KPL is a programming language built by Jon Schwartz and others.  KPL is featured in this 45 minute Channel 9 video.

I learned a lot about the language and the programming environment from the video.  Here is some of that information.  Sorry if I got anything wrong.  I didn’t take notes.
KPL Version 1 (currently available)

  • Based on .Net.
  • The IDE is based on Visual Studio.  Lots of Visual Studio functionaliy is available, simplified, including code block collapsing and auto-complete.
  • Sprites, motion and input are easy.
  • Syntax similar to basic.
  • Lots of docs and examples.
  • Thriving community of example submitters.
  • Needs more girl-oriented content.

KPL Version 2 (coming soon, although most of it was shown in the video)

  • Debugging in the IDE (breakpoints, watchpoints, list of all variables in scope and their values).
  • Objects and user defined objects.
  • Distributable EXEs.
  • The KPL libraries will be available to C#, etc and you’ll be able to automatically convert your KPL code to other .Net languages with one click.
  • DirectX wrappers - build 3D apps (a 40 line program was demoed with a spaceship flying around in a textured box.  Watch the video - words don’t do it justice.)  Terrain/character collision is taken care of for you.
  • Build your own modules in any .NET language with an SDK, expose that functionality to KPL.
  • Control an aimable camera over USB.

Session 1 (Web Calendaring/Events)
Session 2 (Web Forms, DB Stuff, App Creation Wizards)

Amazon recently introduced a feature called Product Previews for people who are using their Associates program. It’s pretty cool. Amazon Associates is Amazon’s affiliates system where sites link to Amazon products and banners with a special id in the url which gives the Associate a share of the profits from the sale of the linked products. With Product Previews, links to Amazon can now have rich popups when the links are moused over. The popups contain a product image, a buy now button, review information, etc. Note: you can move the preview window around. Doing that will ‘pin’ it to the page until you hit close.

Basically, the normal link format for Associates hasn’t changed: http://www.amazon.com/exec/obidos/ASIN/
INSERT_ASIN_HERE/INSERT_ASSOC_ID_HERE. The difference is that you add Javascript to the bottom of the page. So, all your old links to amazon products will automatically be given the Preview treatment.

For instance: Naked Conversations (book), Tron (dvd), Palm TX (pda).

During this beta period, only 50% of visitors to your pages will actually see the Previews - this is so Amazon can see if it’s helping or hurting business.

The code snippet to add the Amazon Product Preview to your site is here: snippet.txt. The official docs are here.

Kam says he’ll make example source available(for accessing the live preview windows used in Flip 3D, Alt-Tab and Taskbar Mouseover) when Vista Beta 2 ships.  Thanks Kam!

Ajaxian and Valleywag are talking about the “Google is building a browser-based web page editor” rumor.  We (Homestead) delivered a browser-based (Ajax) web site design tool last year at Demo 05.  We call it SiteBuilder Lite.  SBL is compatible with our primary editing tool, SiteBuilder, and is usually a user’s first stop for customizing their site after selecting one of over 2000 professionaly-built QuickSite designs as a starting point.

As with SiteBuilder and the rest of our product line, we’ve been updating SiteBuilder Lite every month or two to keep it fresh and to give more value to our customers.  I’ll be interested to see what Google comes up with and whether or not they’ll be able to catch up to us.

This is great news! It means anyone can build really cool Flip 3d/Alt-tab replacements, etc. Kam VedBrat says:

We actually do have an API in Windows Vista that allows you to take the contents of one window and present them in another Window. This is what is used in the live previews that show up in the tooltips over taskbar buttons, and can be used by developers in their own creative ways.

So, Kam, thanks for the news! Now, can you post some sample C# that uses the previews to get us started? :-)

WebKit, an open source library built on top of KDE’s KHTML is the foundation for Apple’s Safari, their Dashboard and a bunch of other stuff. Less than a year after taking the project open source, Apple is giving MacBook Pros and a trip to AWWDC’06 to the top 12 project contributors. The announcement is here.

I did a few quick searches to see who else is doing this kind of thing (large companies rewarding open source dev) - it’s happened before, but not often enough. Sansblog talks about why that is (probably). It’s hard to reward a group of people without upsetting the people who were passed over.

tibike77 on slashdot reminds us that we can all reward the open source community through paypal donation links. We can also contribute to bounties to pay for work that hasn’t been completed, yet, as an incentive.  There is no good index of community funded bounties, but there is an index of company funded bounties here.

Just listened to Episode 13 and Episode 14 of the Ajaxian Podcast. Excellent.

In Ep 14, as usual, the guys did a great job of presenting the information in a concise, always-on-topic manner. I think it’s pretty clear that they have a detailed outline set up beforehand and they stick to it without sounding canned. They went over a ton of Ajax info but the standouts, for me, were DPolls(Ajax poll system with lots of features and effects), Dojo’s File Upload Widget, a warning that IE6 hacks might break in IE7, type-checking in JS and the impact on IDEs, and an IE library that allows for cross-browser “Canvas” functionality using VML (I LOVE CANVAS). They also discussed the frameworks and tools that they are partial to for their own web development work.

Also in Ep 14, they discussed the Ajax Experience conference they set up for May 10-12 in SF. Wow! They have a great lineup, a decent price ($1000), and they are keeping attendance small (500).

Ep 13, an interview with Patrick Lightbody of WebWork, was also great. Lots of info about WebWorks (including a mention of the Dojo/Webworks publish and subscribe technique), and the conversation at the end about Selenium was neat.  From the Selenium website:

Selenium is a test tool for web applications. Selenium tests run directly in a browser, just as real users do. And they run in Internet Explorer, Mozilla and Firefox on Windows, Linux, and Macintosh. No other test tool covers such a wide array of platforms.

  • Browser compatability testing. Test your application to see if it works correctly on different browsers and operating systems. The same script can run on any Selenium platform.
  • System functional testing. Create regression tests to verify application functionality and user acceptance.

Selenium uses a unique mechanism which allows it to run on so multiple platforms. Installed with your application webserver, Selenium automatically deploys its JavaScript automation engine — the Browser Bot — to your browser when you point it at the Selenium install point on your webserver. Thus, you must have write access to the machine your web application server is running on to install Selenium.

“Considering the simplicity of it, it is almost surprising that no one has thought of doing this previously. The framework is simple and the code is neat and very maintainable. Sometimes it takes a work of genius to find the uncomplicated solution to a potentially complicated problem.” - Antony Marcano

Selenium was developed by team of programmers and testers at ThoughtWorks (see below). It is open-source software and can be downloaded and used without charge. It is currently under active development by our team. Stay tuned for updates and further announcements.

ThoughtWorks is a leader in Agile development methods for enterprise software development. Selenium is designed specifically for the acceptance testing requirements of Agile teams. However, teams using more traditional development will also find it useful.

Microsoft will allow gadgets to be dragged and dropped back and forth between live.com and the desktop (operating system). And they aren’t waiting for Vista - an update to Windows XP will be coming soon that will allow this drag and drop functionality. — Michael Arrington

That is crushing news for a lot of fledgeling personal portal companies.  Still, it sounds WONDERFUL to me as a user.
Iamalpha.com from AOL also looks interesting - it’s going for the “lots of mini dhtml gadgets that interact with other services” thing, too.  If you can’t figure out how to launch it, go here and click “go play”.

And, hey, am I the only one around here that remembers DoDots?  They did what Konfabulator does before Konfabulator did it.   Say that 10 times fast!

OH!  And WHAT IS UP with web.archive.org?  I’m not allowed to see past incarnations of the DoDots.com site because the current domain owner forbids it?  Good lord.


Robots.txt Query Exclusion.

We’re sorry, access to http://www.dodots.com has been blocked by the site owner via robots.txt.

I’ve been working on evaluating the abilities of various pda browsers so that mobile interfaces to RSS Aggregators can be a little more smooth. Asynchronous communication with the server is possible, without XMLHttpRequest(AJAX). My test cases are here.  Test #15 is the main proof of concept where I swap an image and have the server send down a cookie with useful information when it serves up the image.  This functionality could be used to asynchronously mark an item in your RSS Aggregator as read or to tag it.  Meanwhile, the cookie that is returned could be used for serving up content asynchronously.

NOTE: After I started down this path, I found  Julien Lamarre’s excellent work on the topic.  For some reason, Julien’s tests don’t work in Blazer on the Palm TX, while I have no idea if my tests work on anything other than Firefox and Blazer.

Edit in Place with JavaScript and CSS

Huihong launched codase today!

Rather than treating code as text, Codase understands programming languages, and treats code as code, the way it’s supposed to be. It provides the most accurate and detailed search results with fine granuity levels of contols. With Codase, one can search functions, classes, strings, constants, macros, comments and other programming language constructs.

Codase can do free form text searches AND makes it easy to search just method names or class names. The results are also pretty-printed(formatting and colors).

141 hits on a search for methods named doit. Who knew?

a Ruby blog

RedHanded is an excellent Ruby blog.

at CodeProject

« Older entries § Newer entries »