So I started my next term at the Technical University of Denmark (DTU), which is the fourth, and I have got this very exciting class called Model Based System Engineering, where the teacher had us to read an article called No Silver Bullet, written by Frederick P. Brooks, Jr.
You may know this article already since it has been widely discussed and was published in 1987. It basically about how system engineering is very hard and disappointing, since it is not as easy as for example physics where you have laws, which apply to most things, which you can relate to and use everywhere, because there are none of them in system engineering.
If you like designing software systems I highly recommend reading this article (link below).
No Silver Bullet – Essence and Accidents of Software Engineering
There is also a Wikipedia page on this topic which sums it up pretty good (link below).
No Silver Bullet on Wikipedia
Posted by ostebaronen at 2:04 am on February 7th, 2010.
Tags: Brooks, DTU, Engineering, Modeling, No Silver Bullet, Software, System, System Engineering, Wikipedia.
We had an assignment in Hardware/Software programming, where we had to make a program in assembler, which can count the number of 1′s in a 16-bit binary string. The sollution for this in the book, Introduction to computing systems – from bits & gates to C & beyond by Yale N. Patt and Sanjay J. Patel, was 12 instructions, we shorted it down to 4 instructions, if you don’t count the initialization part, as seen in the code below. The code is made for the LC-3 processor.
; Assignment 7.7
; Instruction set is from the LC-3 processor.
; This program counts the 1's in the 16-bit binary number, which is located in R0.
; We can do it easily since the Branch instrcution looks at the Most Significant Bit
; and by checking for whether that is 1 or 0 we can either count or not.
; In the end we check if R0 has become 0.
; Made by Tomasz Cielecki & Benjamin Bennike, HW/SW Semester 3 F09 DTU
.ORIG x3000
LD R1, ZERO ;The order of initialization is important,
LD R0, NUMBER ;since BR looks at the last modified register.
TEST BRp TEST2
ADD R1, R1, #1
TEST2 ADD R0, R0, R0 ;Left shift NUMBER for next comparison.
BRnp TEST
HALT
ZERO .FILL x0000
NUMBER .FILL x1370 ;Contains the number to be 1's counted.
.END
Here is a block diagram for you too look at, for better understanding of the code.

Block diagram (Click for larger image)
Posted by ostebaronen at 4:59 pm on October 7th, 2009.
Tags: Assembly, DTU, Hardware Programming, Programming.
It seems that maple have some small problems with some locales. For example I had problems with maple always having English keymap even though my locale was en_DK.UTF-8, though it seems if you start maple with LC_ALL=”da_DK.UTF-8″ it uses danish keymap perfectly fine. So be aware if you are running a english talking system with a non English keymap.
A sollution could be to put LC_ALL=”da_DK.UTF-8″ in the maple startup script.
Posted by ostebaronen at 4:32 pm on September 8th, 2008.
Tags: DTU, Linux, Maple.
Since last time I wrote, I got accepted into the Technical University of Denmark (DTU), where I am going to study at least the next three and a half years. I am going to study IT engineering, which contains a lot mathematics and programming, that is exactly what I want.
Also got my self a dorm room pretty close to the University, which I am going to move into pretty soon.
I currently have some small projects waiting for me, like installing Tomato firmware on my Linksys WRT54GL router or maybe openWRT. Install some applications on my Qnap TS-209 NAS, such as irssi and other small apps. I might even make some howtos on how to get various things to work, but not until i get some time to mess with it.
Posted by ostebaronen at 11:58 am on August 12th, 2008.
Tags: DTU, Qnap TS-209, WRT54GL.