Archive for November, 2005

QuickSilver and leo.dict.org

Quite a while ago I had written that I wanted a QuickSilver plugin for dict.leo.org the best and most exhaustive german-english translator. Well I was playing around with QuickSilver, I even got the plugin from the tutorial running. But I realized the easiest way is still

  • launch QuickSilver
  • type “l” (lower case “L”), which brings me to my Safari history for dict.leo.org, if that’s not the case in your QuickSilver, make it learn by typing “leo” and finding the right history, you must have been on the page before, of course, and the next time you type “leo” it should appear first, by the time it will do so for “L” too
  • hit ENTER
  • and you are right at the input field of the page
  • type the word, hit ENTER
  • done.

Comments (2)

Dynamic languages on embedded devices

A little while ago I was discussing with some friends why dynamic languages (I mean those that allow for rapid prototyping, such as Python) are not used more often on embedded devices. And one argument was that those languages need dynamic memory management, which sounds reasonable. So it would take quite something to run Python on some embedded device and build all the necessary memory management etc. around it. But hardware is getting cheaper and even faster, Flash RAM could replace a hard disk and you could be up an running in a low budget area. Just throw Damn Small Linux on it and that’s it.

Ok, there are some embedded devices that are just too small or have too time critical applications where you can’t do that. But DSL just refreshes this question in my head, since I am currently working with embedded devices again. I think the good old C will stick around, of course, but dynamic languages will more and more spread where C is still used. The prices just have to drop and the devices just need to get smaller. Or not?

Just imagine which impact that would have on the development cycles, the stability and testability of this kind of software. When you are programming you actually don’t want to manage the memory, you want to solve a problem. And this fact needs to be more focused on when programming. And languages like C just don’t allow that.

There is hope …

Update:
Bertrand just commented about Nokia putting Python on their Series 60.

Comments (3)

OpenOffice - cross references

Yes, I am writing stuff and not hacking. Sometimes that is fun, if it doesn’t last for too long. And I was, again, looking for how to insert cross-references inside a document, to another chapter (to figures it is really easy)! Just read here how to do it.

Comments

Google Analytics

Mmmh, I have included the Google Analytics code in this page on Friday I think, but still no result. It still tells me

Tracking Unknown
The Google Analytics tracking code has not been detected on your website’s home page. For Analytics to function, you or your web administrator must add the code to each page of your website.

And I am so curious to know what kind of traffic I got (almost none I guess, anyway). I don’t think the problem is that the http://wolfram.kriesing.de is just a redirect, because that is the URL Google only accepts (doesn’t allow http://wolfram.kriesing.de/blog). Waiting …

Comments

CSS Editing

When I do web developing again, I might need to consider Xyle Scope. It seems to be the best CSS editor I have seen until today. It has Safari (or better a WebKit view) embedded and offers quite some more stuff than simple on the fly editing.
And what is really cool about the evaluation period (well this tool costs money, yes) is that you have 10 days, but only those days that you really work with the tool decrease your testing period, very nice!

Update:
I have tried it now and I am impressed, especially about the way you can select and edit the tags/style you want. But one thing really cost me time, to find out how to apply the changes I was making to the CSS. I thought (Mac OS X like) that changing the value would do it, so I changed a value and pressed TAB. Nothing happened :-(. May be there is some setting or alike. Long story short, simply press ENTER. grrr….
But great anyway, I will buy it when I develop web stuff again, for sure! And it’s from Germany :-)

Comments (2)

Swing fun

Actually I am not that deep in yet, I just started to look at PyObjC in order to write a QuickSilver (btw a must have) plugin and so I got a bit deeper into Cocoa GUI building using the Interface builder. And I have to say I am impressed. I never made a GUI that easily. I would not have written this here when Jannis had not reported about this Swing-animation. Watch it, it really is fun and btw. try the PyObjC tutorial :-) - it’s cool!

Comments

China and the internet

Martin my cousin, is living in Beijing and he has some really interesting notes on China, the IT industry, how to behave and do business there, etc. It’s really worth while diving into another world.

Comments

Mail.app rules bring fun(ction) in your life!

I am waiting for a highly-important, life-saving and world-changing E-Mail. So there is nothing more important than creating a Mail.app-rule that alarms me. The rule shall simply recognize certain words or senders. Ok, that was easy. The rule simply animates the icon down there in the dock, so it jumps up and down (cool about Mac OS X is that those icons also jump sideways in and out, when you have the dock on the side of the screen, overcoming gravitiy so easily, way cool!). Since I had turned off all the jumping icons a while ago, because my dock was getting to busy taming all those jumping icons and I got headaches from that, I will surely recognize the jumping icon now!

!!!! ALARM !!!!

I have been waiting for about a day now. There it was. My pulse rose to 200 in not even a second! Where is the task switch key combination. Ah shit, gotta switch to the right desktop first. E-Mail I am coming …. Ok, got there, click the right inbox where the mail should be in. Got it. … So? What’s this? This is the highly important E-Mail? … Not really … The rule fired on an E-Mail from my mother, who was just wishing me luck. And she used the keywords of course too. Ok, pulse can lower down again! It’s all about knowing what you are doing. I am even building bugs when I am not programming, sad thing …

Comments

Why Python?

It is a really old article from Eric Raymond, but still soooo true. Especially for my friend Daniel, who still swears on C. Get over it! :-)
It feels really good when there is someone who can write out and put things in words, what I only have as a feeling. Great article …

… accepting the debugging overhead of buffer overruns, pointer-aliasing problems, malloc/free memory leaks and all the other associated ills is just crazy on today’s machines. Far better to trade a few cycles and a few kilobytes of memory for the overhead of a scripting language’s memory manager and economize on far more valuable human time.

and this one:

Python’s use of whitespace stopped feeling unnatural after about twenty minutes. I just indented code, pretty much as I would have done in a C program anyway, and it worked.

Comments

OpenOffice for Mac, almost native!

NeoOffice is a really cool alternative to using OpenOffice on your Mac, it’s simply without all those ugly X11 quirks you have to accept when running OpenOffice.

NeoOffice the main development project for making OpenOffice.org to run natively on MacOS X. It is a free software port of OpenOffice.org to the MacOS X platform.

We are already using it extensively at home and it just feels much better than the old OpenOffice. I can only suggest to switch, and don’t worry you got everything that OpenOffice has! Great thing …

Comments

OpenOffice - first page different

I keep forgetting it, but now I write it down so I know where to find it. Remember this is my blog :-).
To make the first page different

  • go on the first page
  • open the Stylist from the menu “Format/Stylist”
  • choose the view for the page layout (german: Seitenvorlagen)
  • since you are on the first page click on the “first page” style to assign this style to the first page, just to be sure
  • now you can right click the “first page” style and modify it, i.e. turn off the footer, what I needed

Comments

Why I should be debugging again!

for i in range(len(my_list)):
   if some_condition:
       del my_list[i]

the range(len()) doesn’t get calculated again, so i get an IndexError for sure, the closer it gets to the end. Because in the beginning there might were 5 elements in my_list but when I delete one and at the end I want to access my_list[4] I get the IndexError, because that’s now my_list[3], or course. Looking at the code didn’t make it obvious, because “I knew it was correct” and “it is just too simple to contain an error”. I am not human, I am a programmer who knows!

That’s why I should be debugging again, I saw that right away, just put the watch on the my_list and the first del made me see the problem. That’s why I should get used to debug right away!

That made me think about my supposedly development in developing.
In 1986 or 1987 I started with Basic, I don’t think I was debugging that. There was not even a debugger for it, or was there? For my KC87 and KC 85/3 there was surely no debugger. Then, I don’t remember the year, I switched to Turbo Pascal (cooles pic). That had debugging of course. And that was just easy as changing dipers (is for me now)! F4, F5, F6 and all those key combinations for Step Over, Step Into, etc. Then in 1990 *thinking* … yes, when I was in 11th grade. I started to use C, that was strange. All those curly braces and this strange i++ construct. Hoooh, that scared me at first. Hey man I was programming graphic stuff in Pascal, I even knew how to use the mouse and all that, and now you come to me with curly braces and that stuff. But a debugger was just standard at this time, of course! Later I was doing a lot with Delphi, Assembler, C++ and some others I guess. And I was always debugging my code. Well I remember that I didn’t when I was programming multi-threaded stuff in Delphi for my diploma, of course.

So what the heck was I doing when I accepted to stop debugging when I started programming PHP (actually already with Perl, that I was doing little before)? I think it was the fascinating world of the web, that has opened to me and made me forget about the comforts of debugging and other programming tools, that I had used until then.

But fortunately there are also debuggers for PHP now and thanks to the WingIDE there is a great debugger for Python, with all the “step into”, “step over” and watch list things, even the same key combinations as I remember them from Pascal. Great. So I will start to creep out of my black whole and debug again.

Comments (5)

TestOOB - Finally learning again

I finally found some challenge again. I am learning again, I am reading source code that really is nicely written and well structured. I have the feeling that got somehow lost in my PHP days. The TestOOB source makes use of various design patterns, where it makes sense and is thread-safe. Somehow it seems that the language Python attracts the people that really understand those concepts and the level of programming is much higher than in most PHP projects. That is a challenge and it will take me a while to make it up to understand it all and to feel comfortable at this level, I am very excited about the upcoming time. That is the salt in the soup of a programmers life. Yeah!
Read the rest of this entry »

Comments (2)