- Family and Friends
Archive for category Development
“Notepad++ is a free (free as in “free speech”, but also as in “free beer”) source code editor and Notepad replacement, which supports several programming languages, running under the MS Windows environment.
This project, based on the Scintilla edit component (a very powerful editor component), written in C++ with pure win32 api and STL (that ensures the higher execution speed and smaller size of the program), is under the GPL Licence.
This project is mature. However, as you can see it’s a one-man-project, there are still some bugs and missing features. If you have any question or suggestion about this project, please post them on the forums. As well, if you have any feature requests, you can always make the demand, but there’s no guarantee that I’ll implement it.”
While writing this I am still in Cambridge, England and packing my stuff to take the next plane back home…
Sadly I will only see the night-sky for this trip because I started at 0600 AM GMT+1 this morning in Nürnberg and I will start again in London Stansted at 1945 GMT…
If you are – just like me – still using the very good and always updated Xbox Media Center for your slightly hacked XBOX 1 console you should take a look at the new XBMC.org website:
Not only that these guys a making a great job creating the best Media Center that I’ve ever was allowed to use, they are even porting it to different platforms:
“It’s currently being ported to both Linux (x86 Ubuntu 32bit) and Mac OS X. Team XBMC is looking for talented developers to help with this effort.
Official XBMC software application names:
- XBMC for Mac OS X
- XBMC for Linux
- XBMC for Xbox “
That means: If you have a OS X or Linux box, you should visit the site too and take a look at the (early) snapshots of XBMC for your platform.
Once every while I want to know how many lines of code I’ve written so far. And because I did not find a well working and integrated tool for this job yet I was searching one everytime. But it seems that I’ve found the tool: it’s called “Line Counter” and it’s Freeware. It’s a Visual Studio Add-In which means it’s fully integrated.
And it does the trick:
You can even get the sources of this Add-In. Go and enjoy!
FeM is in need of one… for more than two years now… maybe this will do the job? It’s bright, nerdy and cat-compatible (needed for keeping certain Mr. S’s out of the office)
When I first saw a review of “Microsoft Windows Home Server” I was impressed by several features. One that I never thought about is that little icon on each Home Server client that shows you the overall status of your home network:
This little icon can look like this, depending on the status:
As you can see – it’ll give you a clean and fast status by telling you that everything is okay on your network or that anything needs your, maybe immediate, attention.
I am administrating round about 12 Windows servers and I always looked for a clean and easy to use tool to monitor them. So I came up with a plan: Build my own tool.
Since I am extensivly using Windows Communication Foundation in the last weeks I was intrigued to try it on that matter. So I built a WCF selfhosting service that makes the eventlog of the machine it is running on available. Then I built a small client that fits nicely in your tray. I am not quite done yet but it’s a good start.
As you can see. There is the Host, running on the server and making all Eventlogs of this machine available. Then there is “SmallClient” – being exactly this: a small client for testing purposes only. And thirdly there’s the EventLogClient – giving you the full blown user interface…
This is how it looks when you add a server to the client:
And this is how it looks when you configure a filter:
I thought it would be nice to have this workflow:
configure/add the server and select the eventlog that you want to monitor
create and configure a filter that is matched upon the particular eventlog source
For the icons (see above) I used one of the icons from the Tango Icon Gallery as a starting point and added some color and stuff.
So why do I even talk about all this? I want YOU to take the code and use it…add more functionality…I am releasing the code(except the icons) under the BSD license. So you can do almost whatever you want with it – but I would love to hear about the things you’re doing with my code and idea.
You can download the sourcecode of my little project here. (200 Kbytes)
Finally someone started to port the Windows Communication Foundation to Mono. That’s great news because the only thing that keeps some of my newest works from running under anything different Windows is the WCF.
“Implementing peer-to-peer (P2P) communication was the main objective. WCF ships, by default, with predefined bits for making P2P connections in an easy way, being possible to build services which hosts a mesh of nodes (a node represents a potential client), taking care of everything related to registration of new nodes, message flow over the mesh, etc.”
You can get the plan as pdf here.
Source: Mono Olive
The Team Foundation Server 2008 Feature list is finalized and available… read it here:
“Administration, Operations & Setup
- Share Point 2007 support
- Enable use of Sharepoint on any server and any port
- Support for MOSS 2007
- Enable support for Reporting Services on any server and any port (new) (RTM)
- Support for SQL Named Instances – This will allow customers to share a SQL server between multiple TFS instances, or with other applications. This has been a commonly requested feature by enterprises.
- “Longhorn” server support – TFS will support the next version of the server (and corresponding new version of IIS) that is currently under development.
- Sync Large Groups – This is a set of work to improve the performance and robustness of TFS’s handling large groups of users (~30,000 or more) granted permission to a TFS instance. Today this can result in a support call to recover from it.
- Non-default ports – We’ve gotten a bunch of feedback from enterprise customers about TFS’s limited support for alternate web sites and ports running afoul of data center policies. We are going to be improving TFS’s configurability in this respect in Orcas.
- Simplify installation – In Orcas, we will be doing a variety of things to attempt to make installing TFS easier and quicker than it is now. Improvements include eliminating the separate data-tier installation, simplifying the requirements around required domain accounts by supporting the built in machine accounts (like Network Service) where we can, etc.
- Official testing and support for more configurations – This includes clustering, mirroring, log shipping, Virtual machine deployment, and more.
- Support for client certificates
- Upgrade from TFS 2005
- Support for SQL 2008 (aka Katmai) (new) (RTM)
- TFSDeleteProject now permanently deletes (destroys) version control content (new) (RTM)
- New role for many operations activities (new) (RTM) – You don’t have to be server administrator to run many of the admin utilities any longer.
- Enhancements to tfsadminutil (new) (RTM) – New capability to configure accounts, connections, etc on both TFS and the TFS proxy.
Build (more detail)
- Support multi-threaded builds with the new MSBuild.
- Continuous Integration – There are many components to this, including build queuing and queue management, drop management (so that users can set policies for when builds should be automatically deleted), and build triggers that allows configuration of exactly how when CI builds should be triggered, for example – every checkin, rolling build (completion of one build starts the next), etc.
- Improved ability to specify what source, versions of source, and other build properties.
- Improved extensibility of the build targets – such as ability to easily execute targets before and after each solution/project is built.
- Improved ability to manage multiple build machines.
- Stop and delete builds from within VS.
- .NET Object model for programming against the build server.
- Simplified ability to specify what tests get run as part of a build.
- The ability to store build definitions anywhere in the version control hierarchy.
- Scheduled builds – You can schedule builds to happen at specified times.
- Improved build agent communication – We replaced .NET binary remoting with WCF web services, simplifying some configuration and security aspects.
- Ability to run GUI tests as part of a build – Automated builds used to run tests in such a way as to prevent access to a GUI desktop.
- New checkin policy for broken CI builds – Preventing checkin while the CI build is broken.
- Support for HTTPS communication to the TFS server (new)
- Continuous Integration build checkin policy (new)
- Support for incremental gets and builds (new)
- Add support for checkin policy overrides to the warehouse – an oversight from V1.
- Migration toolkit – A toolkit for building conversion and mirroring solutions between TFS and other systems. In addition, we will release one or more new tools to integrate with popular alternative systems.
- Annotate – This is based on the TFS Annotate Power Tool but includes numerous improvements.
- Folder Diff – Also based on the TFS Tree Diff Power Tool with numerous improvements.
- Destroy – The ability to permanently delete version control files/folders from TFS. It can also be used to destroy the file contents while preserving the change set history.
- Get Latest On Checkout – There have been many requests for this feature (which was a change in behavior from SourceSafe). There is now an option that allows you to specify that you want TFS to download the latest version of files when you check them out.
- Workspace improvements – Workspaces will now support mapping a folder or file under a cloaked folder and wildcard mappings so that you can map all files in a folder without mapping sub folders. Based on experience with large projects, this will simplify workspace definitions for many people.
- Performance improvements – A variety of Version Control performance enhancements that will improve virtually all aspects of version control performance. The gains for smaller servers/projects (< 10,000 files) will be modest. The gains for larger projects (particularly where the file count approaches 100,000’s) will be substantial.
- Scale improvements – Fixed out of memory problems on the server when operating on more than a few hundred thousand files at a time.
- Offline improvements – We’ve signficantly improved the experience going offline and integrated the tfpt online capability into the IDE for going back online.
- Extranet support for the TFS Proxy – allowing you to access a local TFS proxy with a different set of credentials than the TFS server.
- Command line help – You can now type “tf command /help” and get a console dump of the usage of that command. This is much more convenient than always being launched into the richer GUI hypertext help when you just want to remember what the options for a command are. You can still launch the GUI help by running “tf msdn”. You can get a console dump of available commands by just typing “tf help”.
- Source Control Explorer refresh improvements – This includes less redrawing and reloading but even more important it enables updates based on changes made in other instances of TeamExploror or the command line. That’s right, if you checkout a file from the command line, any instances of TeamExplorer you have running on the same machine will automatically refresh.
- Async loading of the Source Control Explorer (new)
- The SCE local path can now be selected and copied (new)
- Merge improvements (new) – Improved the logic that detects merge conflicts to generate fewer false positives and handle more scenarios.
Work Item Tracking
- Performance & Scale improvements – A variety of improvements that will make both the work item server and client faster and able to handle larger servers.
- Query builder usability improvements – Drop down filtering based on current project, better MRU lists, column drag & drop, shift-click mouse based multi-column sorting, etc.
- Attachments improvements – Save button, drag & drop for adding an attachment, multi-select for attaching files.
- Tooltips on field names contain the field name used for querying
- Server side support for deleting work items & work item types – We didn’t have time to do client UI support for it but we plan to release a Power Tool that will take advantage of the new server side feature.
- Support for security on the iteration hierarchy (new)
- Adding Web Access UI to TFS – As you’ve seen many places, we acquired devBiz and their TeamPlain Web Access product. We are releasing it as a Power Tool in the next few months and plan to release it as an official product in the Orcas timeframe. We have not figured out how the release date will line up with the Orcas date but it will be in the same general timeframe.
- In addition to all of the feature work, we’ve spent months testing the product and fixing any bugs we’ve found. We expect Orcas will have even better stability and robustness than TFS 2005.
Compatibility (no change since last time)
As Orcas is an adoption focused release, we have put a lot of emphasis on compatibility with VS2005. We are striving for near 100% compatibility. The Orcas client will be able to work with a VS2005 server and a VS2005 client will be able to work with an Orcas server. There are only a few compatibility issues.
- Client side VS add-ins will need to be recompiled (or have policy changed) because the TFS OM assembly versions will change and add-ins will need to bind to the new assemblies. The APIs themselves are generally not changing, so we don’t expect much in the way of code changes – just recompilation.
- Build is the only area where we plan to have some compatibility disconnects. In general, most build operations – listing build definitions, starting and stopping builds, examining build reports, etc. will work both with 2005 client -> Orcas server and Orcas client -> 2005 server. However, here are a few caveats:
- An Orcas TFS server will only work with an Orcas build server – so you’ll need to upgrade your build server when you upgrade your TFS server.
- For an VS2005 client to start a build on an Orcas server, the build definition needs to be stored at $/
/TeamBuildTypes/ . In Orcas, you have more flexibility as to where to put them.
- Changes made to properties in the .proj file that are in the database in Orcas will not be updated in the database and will no longer be in sync.
- VS2005 will be able to start a build, but it can’t queue a build, see the list of builds in the queue, see the list of build agents, etc.
- An Orcas client will not be able to create a new build definition on a TFS2005 server.
- When starting a build, an Orcas client will not be able to change any parameters in the dialog for a TFS2005 Server.”
Die Koch Media GmbH sucht ab sofort Studenten und interessierte für Testvorführungen neuer Video- und Computerspiele:
“Wenn Sie bereit wären, natürlich gegen eine kleine Gegenleistung, die Entwicklung eines neuen Spiels (plattformunabhängig) zu verfolgen und zu beeinflußen und dies auch mehrmals in den kommenden Monaten machen würden, melden Sie sich bitte unter der Telefon-Nummer: 089-24245196.”
I am currently involved in a very interesting project which utilizes a massive load of threads and in-memory data structures. The downside if this is of course: how on earth do I make that thread-safe?
Along the journey I stumbled upon Ralf Westphals thoughts and code on that matter. Ralf comprehensively writes about a technology called “Software Transactional Memory“. “What’s that?” you may ask. And here’s the answer provided by the wikipedia:
“In computer science, software transactional memory (STM) is a concurrency control mechanism analogous to database transactions for controlling access to shared memory in concurrent computing. It functions as an alternative to lock-based synchronization, and is typically implemented in a lock-free way. A transaction in this context is a piece of code that executes a series of reads and writes to shared memory. These reads and writes logically occur at a single instant in time; intermediate states are not visible to other (successful) transactions. The idea of providing hardware support for transactions originated in a 1986 paper and patent by Tom Knight. The idea was popularized by Maurice Herlihy and J. Eliot B. Moss. In 1995 Nir Shavit and Dan Touitou extended this idea to software-only transactional memory (STM). STM has recently been the focus of intense research and support for practical implementations is growing.”
It seems that this different approach to in-memory data management could a solution for most of the difficulties I and maybe you might have with thread safe programming. Even better: it make the code easier to read and is completely written in C#.
Since I am still in the evaluation phase if or if not to use the NSTM implementation, I will keep you posted on that matter in future updates.
Source 1: http://weblogs.asp.net/ralfw/archive/tags/Software+Transactional+Memory/default.aspx
Source 2: http://en.wikipedia.org/wiki/Software_transactional_memory
Source 3: http://www.codeplex.com/NetSTM
So here’s the problem I had: There is an Exchange 2007 server I am forced to use for some of my daily work and that’s where the problems start: Due to the work of some evil geniuses there’s a load of user and security policies associated with that server. That’s not a problem per se: It’s just that things like “forward all mails to this account” don’t work. You have to use Outlook Web Access or the heavyweight Outlook to get to your mails… Till today I had an Outlook 2007 running on my private IMAP mailserver machine just for the purpose of downloading all the mail from the Exchange server to the local harddisk. I had setup a client-rule to copy all the mail to my IMAP server but despite the fact Outlook is running on the exact same machine as the IMAP server it just did not work for more than 1-20 messages… connections were lost and stuff screwed up. So I had to move all the messages manually (Select-All -> Drag-n-Drop onto the IMAP folder inside Outlook) which took me quite some time each month.
Two days ago I read an article where namenlos wrote about his journey with his employers Exchange server. He wrote a Python script that did the job for Exchange 2003 by using the WebDAV features. These features unfortunatly are deprecated in the current 2007 release of Exchange. So I decided to write a tool in C# that does the trick and uses the brand-spanking new Exchange 2007 Web Service.
The Exchange 2007 SDK is a wasteland to say the least when it comes to documentation. It took me some time and a good search engine to get to something useful out of it. But I think it’s worth the pain: When you got over the first annoying steps you’ll just like me will start to love the possibilities this Web Services give you.
In my case I am using the webservices to do these things:
allocate my inbox and obtain a listing of messageIDs
get the complete messages out of my inbox
reformat the messages and send them via smtp to my own mail server
What I’ve written is not feature complete (as in: no attachements, …) but it’s a great and working start and does the 3 point-trick from above quite well. I will refine the code and add the missing features (e.g. attachements and stuff) in the future… or maybe you are faster than me. In that case it would be well appreciated if you send me your code/a link to the code (find my email in the sourcefile…)
Source 1: http://blog.slash-me.net/archives/235-fetchmail-fuer-MS-Exchange.html
Source 2: http://msdn2.microsoft.com/en-us/library/aa562613.aspx
Source 3: http://www.schrankmonster.de/content/binary/Exchange2IMAP.zip
There’s an interesting Windows PowerShell e-book available for free download. You can grab the e-book and the associated demos at Microsoft Switzerland.
Source 1: e-book
Source 2: demos
“Orcas” represents a major evolution for Visual Studio and our suite of .NET languages. Who better to talk about what’s new in “Orcas” than our friends S. Somasegar (Everybody calls him Soma), VP of the Developer Division (the group that makes all of our development technologies), and Scott Guthrie, General Manager and one of Microsoft’s most prolific employees (now a senior manager, but he keeps his hands in the technologies he and team build and innovate).”
Get the video and all here.
“OLE Coordinate System is trompe-l’oeil interactive software that enables characters to wander along blocks and staircases in impossible ways. While M.C. Escher is famous for his “trick of the eye” works, this piece enables users to create and experience their own Escher-esque worlds. Examples of such animation expressions are: character movements based on a 2D interpretation of attached blocks which are not contiguous in three-dimensional space; falling motions on a single plane, etc. You don’t have to do anything special to create “trick of the eye” images like these. The user just clicks to position the block, staircase or character and change the angle.”
For a better understanding, look at the pictures and the video:
Source: OLE Coordinate System
Oh well…it’s getting more and more work in the last days. Since I cannot speak yet about the things I am doing lately I just can tell you it involves a trip to Vienna and a whole lot of coding work…
I wrote some test code for a project and after running that Test locally the Test Host process crashed. Oh well… seems I’ve written a Test for the Test…
Today I had a talk about IP-TV in our local research network – a project I am involved in the past year. And since I did some of the legal and coding work (YAPS) I was the one who wanted to talk about it the most…
First here’s the slidedeck:
The talk was recorded and you can watch it as soon as the post-production team has finished working on it – I’ll keep you posted.
Source: Slidedeck as PDF
Yeah you probably know that: You got the idea, you start the coding and you stop at that same point you stopped last time because you run out of talent. It’s that art thing you’re not into. I for myself have to admit that I cannot draw. Well to be precise I can draw technically but nobody every recognized what I was drawing so I suppose …
Well to make a point: Someone who can actually draw took a heart and created what a person like me wanted for years: A proper tile set for prototyping.
The author wants to tell us this:
“The PlanetCute set attempts to wiggle past many of those problems.
- Building blocks, not tilesets: Instead of having complex tilesets, each block stacks nicely with pretty much any other block. If you can understand Legos, you can understand how to put together these graphics. These tiles should be useful to children, not just uber-elite game gods.
- Standardized format: All the graphics are uniform sized PNGs. The graphics will also work in almost any graphics engine out there that can do 2D sprites. Once you get your offsets right once, you never have to change them again.
- Source files included: If you do need to make changes, I’ve included the source files. If you really need to change a color, go for it. If you need a big gem, just scale up the original. Everything is a vector so you’ll alway end up with clean results.”
And yet it does look very very good:
You can grab them and:
“The next time you make a prototype, use these graphics. If you can reduce the time you spend on futzing with graphics from 40% to 5%, you can put more time into those fun game mechanics you’ve been dreaming about. The magic is that your graphics will now look good enough to get you through the first 15 seconds of your demo. Your friend will perk up and stay engaged long enough to give you feedback all the wonderful work that you’ve put into your prototype.”
To complete this article: They are available as pixel graphics and Silverlight/Expression compatible .design files…hurray!
I had a talk yesterday about Windows Vista for developers. You can grab the slides here:
There’s a free fan made Battlestar Galactica game available…
“Beyond the Red Line is a stand-alone total conversion for the award-winning Freespace 2 released by Volition and Interplay for the PC. It is based on the popular new tv-show Battlestar Galactica. No, not the one from the 70s.”
It’s free and available for Windows, OS X and Linux.
So here we are back again with an progress update on the YAPS project. First of all take a look at the gorgeous new looks (thanks to Dominik):
Currently Dominik is working on the layout. He did the switch to the YAML framework and is working on the integration of new features like the advanced recording options:
Since one of the most anticipated feature was the configurability of YAPS we moved the binary configuration files to a XML based configuration structure. That’s right: you can now configure your YAPS using XML files.
In the course of XML integration several other things came up. For example a better settop box integration. For that matter we are trying to make YAPS tuxbox compatible. That means you can use any Tuxbox/Enigma/Neutrino streaming client to access a YAPS server. That means: Onscreen Display on Xbox Media Center, EPG is possible now on every compatible client (and there are some).
This, when ready, will look something like this (without the debugging information at the top):
And since EPG will be possible we started to integrate XMLtv into YAPS. XMLtv is a free tool that brings several data grabbers with it. It simply creates an XML file in which the EPG information is stored… great tool and a how-to will be available soon.
So the data structures are already in YAPS and now we’re starting to integrate it into the GUI and internal methods. Here’s what the scheme looks like in eye-candy mode:
As usual you can grab the daily build here: http://www.slow-backward.de/YAPS_daily_build.zip or just build one yourself using the great MSBuild tools and a daily sourcecode snapshot. I wrote about that here and you can get the subversion access here.
We appreciate every single user feedback we get. If you got an idea, if you want to have a feature in YAPS or anything else. Don’t hesitate and contact us.
Oh. One last note: the current source might not compile with mono. We did not abandon the mono support so I’ll keep everyone updated on that issue.
Here’s the detailed changelog:
- added XMLtv scheme and data structures
- added Tuxbox data structures for future use
- added Tuxbox /xml/ handling path to http server
- added CanAccessTuxbox to Authentification handling
- fixed some bugs in the recording table
- changed all templates to make use of the skin-setting
- changed the layout based on YAML (www.yaml.de)
- changed the default design
- fixed some layout bugs, everything should be conform to W3C standards now
- changed some minor issues in footer and help section
- added new options for add recording form
- changed the settings data structures do actually do something
- changed the multicast processor to use the multicast prefix stored in settings
- you define the prefix like this: “239.255.2.” – YAPS now adds the last number which is the channel number (23 for example) and then the port number 50 + channel number = 5023
this leads to the multicast adress 184.108.40.206:5023
- changed copyright notice
- removed binary SaveSettings() functionality
- added new setting element to Recording Data structure (createdby)
- extended authentification data structures and HTTPAuthProcessor code to allow mapping of
- usernames to ip adresses
- added Authentification XML settings file
- added new capability “CanDeleteOwnRecordings”
- changed capabilty “CanDeleteRecordings” to “CanDeleteAllRecordings”
- changed RemoveRecording/RemoveRecordingFile/Deleterecording behavious according to the new capabilities
- added “CreatedBy” handling to the AddRecording HTTP Server method
- added “%createdby%” Template Keyword for Recording-Listings
- added XML based configuration files (replacing the old binary ones)
- changed the logfile behaviour so that when YAPS is restarted everything is appended to the logfile instead of overwritten
- authed another client
- fixed a bug that leads to the corruption of the xml files…
- there’s a remaining bug in the html encoding –> leads to corrupted letters in browser
- added some todos
- fixed an encoding bug in the http server that caused firefox and other browsers to corrupt the html
Source 1: http://www.schrankmonster.de/SearchView.aspx?q=yaps
Source 2: http://www.yaml.de/
Source 3: http://wiki.godofgta.de/Ehttp_api_doku
Source 4: http://www.dbox2.info/
Source 5: http://www.tuxbox.org/
Source 6: http://xmltv.org/wiki/
Source 7: http://www.slow-backward.de/YAPS_daily_build.zip
Source 8: http://www.slow-backward.de/YAPS_daily_source.zip
“We’re delighted to offer you this place where you can learn and share experiences with the XNA family of products. Whether you’re using XNA Game Studio Express or the native DirectX tools and APIs, this is the place to come to!…”
I really do love the pivot function of my display…
You are a fan of SIM* games? You want something light to take on your travels and play from time to time? I got good news for you: Open Transport Tycoon Deluxe is available in it’s final version 0.5.
It’s running on Windows, Linux and MacOS and you will need the original Transport Tycoon Deluxe files because OpenTTD just reuses the graphics of the old version.
But when you got all that you get a very very great game that doesn’t need much resources and is insane fun.
I had this very same idea just a week ago and now someone has done it: A Raytracer written entirely in C# and running upon XNA.
“Ok, I’ve got most of what I want done on the Ray Tracing project — enough at least to publish some code and do some blogging. This first article describes the overall coding structure, and how to use the project. I’ll get into some of the more difficult aspects of ray tracing in future posts.”
It obviously doesn’t run on the 360 yet – so keep on watching this project. (due to some limitations on the 360 XNA Implementation I would also recommend waiting for the next run)
For those of us who want to write software for phones/pdas there’s also something new available for download. The Windows Mobile 6 SDK!
“Using the Windows Mobile 6 SDK you can test your application using the emulators in the Windows Mobile 6 SDKs. The SDKs together with Visual Studio 2005 mean you have everything you need to build and test applications for both Windows Mobile 5.0 and Windows Mobile 6. Read the “What’s New” guide to learn why your Windows Mobile 5.0 application should work on Windows Mobile 6, what to expect from new screen resolutions and why Windows Mobile 6 makes it easier to build and deploy Line of Business applications.
Don’t forget that around May 1st we’ll release the Windows Mobile 6 SDK Refresh featuring new documentation, the latest emulators, support for basic AJAX applications and links to Line of Business frameworks, samples and documentation.”
Even I can now control the world outside my computer. With the USB interface board K8055 from Velleman, Belgium, you can access to the board via DLL. It´s easy to use i.g. in VisualBasic Express. (I did so last night – faszinating!) That reminds me on old Commodore Plus/4 times!
I tested it on a Windows XP system, but it also should work on Linux. Now let´s see, what cases I´m going to resolve. 🙂
SuperJer just had some time to spare and before getting bored he started to write a raytracer from scratch and write about it on the intertubes:
“Ray-tracing works sort of like a camera in real life, but in reverse. With a camera (or your eyes, for that matter), rays of light from the environment enter the lens and hit the film/digital chip/meaty eye cells. Something magical happens where the light hits and we get an image!
With ray tracing, we start at each point on our “film” or image, and blast a ray out of our camera lens and see what it hits. What it hits determines the color and brightness at that spot on the film. Of course by “film” I mean digital image, and by “spot” I mean pixel.
I decided my entire program would be centered around one function, called raytrace(). The idea is this: You give raytrace() a starting point and a direction, and it follows that ray until it collides with something in my virtual environment. It returns the color of the object it collided with.
When generating a 3D image, raytrace() will find the color for just ONE pixel in the result image. By running raytrace once for each pixel, we can get the whole scene! Ray-tracing is kind of slow because, for example, in a 1 megapixel image you’d have to run it 1 million times.”
He even has put up some pictures and videos:
You can even get the whole sourcecode (C++ with no dependencies whatsoever) from his site. Continue at source…
Lutz Roeder just released version 5 of the fabulous .NET Reflector tool. Go and get it!
“Like any other game console, Atari 2600 cartridges contained executable code also commingled with data. This lists the code as columns of assembly language. Most of it is math or conditional statements (if x is true, go to y), so each time there’s “go to” a curve is drawn from that point to its destination.
When a byte of data (as opposed to code) is found in the cartridge, it is shown as an orange row: a solid block for a “1” or a dot for a “0”. The row is eight elements long, representing a whole byte. This usually means that the images can be seen in their entirety when a series of bytes are shown as rows. The images were often stored upside-down as a programming method.”
And it looks like this:
“In a rather extraordinary example of begging for money, Florence Devouard, Chairwoman of the Wikimedia foundation has told an audience at the Lift07 conference that Wikipedia has the financial resources to run its servers for another 3-4 months, and that without further funding Wikipedia “might disappear”.“
Oh what an interesing find today. Seems like the Wikipedia already backed away from the statement but the damage is done.
Scott Water writes:
“…, but to me this is just dumb.
They are sitting on an advertising gold mine. To even say it may be close to running out of money is inexcusable. Think about all the time individuals have dedicated to that site. Because of a lack of funds all that work could disappear? I understand businesses come and go, but to not even attempt to be a business…ehh..”
I don’t think that advertising would solve anything here. Way to many religious thoughts have gone and will go into that. Just because of that: the inability to agree in any possible way because of contradicting beliefs has and will always be in the way of such projects. I don’t say that there should be a dictatorship that guides the way – but not even trying to agree on such simple things is the problem of many many $open projects. I came across such inabilities several times in the last months. It ended in all cases with the worst solution for everyone, just because the open-guys/girls were not able to compromise for the sake of the best solution.
(goddamn! I just used that $lame placeholder statement for the first time, getting old…)
“The Microsoft .NET Micro Framework combines the reliability and efficiency of managed code with the premier development tools of Microsoft Visual Studio to deliver exceptional productivity for developing embedded applications on small devices.
The .NET Micro Framework brings a rich, managed-code environment to smaller, less expensive, and more resource-constrained devices. Requiring only a few hundred kilobytes of RAM and an inexpensive processor, the .NET Micro Framework was built from the ground up to let you build applications using familiar Visual Studio development tools.
With .NET Micro Framework SDK, you can develop your embedded solutions in C# using a subset of the .NET libraries focused on embedded applications. Your development environment is Visual Studio, where you can take advantage of its powerful editing, object browsing, project management, and debugging capabilities. These capabilities are available when using the .NET Micro Framework SDK’s extensible device emulation system or on real hardware.”
“This is a deconstructed Nintendo emulator that shows how sprites and sprite memory are handled while a game is being played. The intent is to show insight for how software and hardware work, given the relatively simple example of a minimal architecture from an old game console system.”
“It monitors port 25 and emulates an Smtp server dropping the files in a directory which you can read using Windows Mail (Outlook Express).”
Source: get it here.
“It’s not actually an Expose clone, because the window thumbnails are placed on a circle. You can cycle through them using the mouse or the keyboard. It has keyboard and mouse triggers, and in a future version it will include also speech recognition. You can even replace Win+TAB so that SmartFlip appears when the key combination is pressed.”
“You can download a beta version here: http://smartflip.110mb.com/SmartFlip.zip”
The author writes that you should experiment with the options dialog (which looks quite nice):
Here are my slides of my talk:
And I said that I would link to the article about .NET Reflectors impact on “Serial Keygen”, go and read it here.
Oh boy I just discovered a very addictive piece of software/game that even runs on my Nintendo DS. You can try it right now:
“Microsoft Portrait is a research prototype for mobile video communication. It supports .NET Messenger Service, Session Initiation Protocol and Internet Locator Service on PCs, Pocket PCs, Handheld PCs and Smartphone. It runs on local area networks, dialup networks and even wireless networks with bandwidths as low as 9.6 kilobits/second. Microsoft Portrait delivers portrait-like video if users are in low bandwidths and displays full-color video if users are in broadband. In low bandwidths, portrait video possesses clearer shape, smoother motion, shorter latency and much cheaper computational cost than do conventional video technologies. Microsoft Portrait pursues providing presence notification, chat/voice/video functions anytime, anywhere, on any device.”
I wrote quite a lot of code for the 23rd Chaos Communication Congress. And because of that I want to make it publicy available for everyone to download and use. It’s all GPL (because of the libaries used) so use it according to the license.
You can learn how to:
deserialize the pentabarf schedule.en.xml file
create a valid congress filename
create and manipulate animations with text and bitmaps
store those animations in AVI container files
Und wie versprochen gibt es hier nun die Slides des .NET Compact Framework Vortrags (Version 1.0 und 2.0)
Heute um 18 Uhr findet das zweite .NET Usergroup Treffen in Ilmenau (Campus, Haus F, Rechnerlabor) statt.
- Begrüßung, Neuigkeiten bzgl. der Usergroup (Nico Orschel, Microsoft Student Partner)
- .NET Compact Framework (Daniel Kirstenpfad, Microsoft Senior Student Partner)
- Mobiles Web mit ASP.NET 2.0 (Nico Orschel, Microsoft Student Partner)
- Networking und gemütlicher Ausklang des Treffens
Die Teilnahme am Treffen ist kostenlos, unverbindlich und nicht anmeldepflichtig.
Das ganze kann man auch nochmal auf www.dotnetcommunity.de nachlesen. Dort und hier wird es dann auch nach der Veranstaltung die Slides geben.
Yeah baby!! If I’ll ever do a game on the 360, it’ll most probably a 2D jump-n-run. Because that is one of the genres I enjoyed the most.
Christian Liensberger started something which looks nice (and copyrighted) in the first place, and brings back all that love for jump-n-runs in the second place…
“You can control Mario by plugging in an Xbox 360 controller. Use the left stick to move around and A to jump and B to run faster. The keyboard is also supported (added for your guys). Use left, right, down to move around and X to jump and Y to run faster.”
Source: XNA Express + Super Mario is fun! (now with source code)
“Through further advancement and feedback, Service Pack 1 also provides over 70 improvements for common development scenarios including:
- New processor support (e.g., Core Duo) for code generation and profiling
- Performance and scale improvements in Team Foundation Server
- Team Foundation Server integration with Excel 2007 and Project 2007
- Tool support for occasionally connected devices and SQL Server Compact Edition
- Additional support for project file based Web applications
- Windows Embedded 6.0 platform and tools support
For developers using Visual Studio 2005 on Windows Vista, Microsoft is in current development on an update to Service Pack 1 called the ‘Visual Studio 2005 SP1 Vista Refresh Beta’. This update builds on the improvements made in SP1 and delivers a first class experience for developers wanting to take advantages of the new features in Windows Vista. The Visual Studio 2005 SP1 Update for Windows Vista is expected to ship after the consumer availability of Windows Vista in Q1 of 2007 and is now available in beta.”
One more step forward: The 23c3 opening credit generator is done. It’s an application which reads the Fahrplan XML file and generates an opening credit movie file which we will use in the recording and encoding process.
And this is what it finally looks like:
After clicking the “generate” button it’ll create the animation on the fly with all the blending and font rendering and write it to a movie file in it’s own directory. I used the AForge which is GPL v2 which makes the whole thingy GNU v2. Damn, I hate this license crap B-)
Sourcecode: Vorspanngenerator_sourcecode.zip (2,17 MB)
Apparently there is a contest scheduled for January 2007 in which people are asked to build their dream games. The XBOX LIVE arcade logo in the background suggests that maybe the contest winning games will get a certification and XBOX LIVE arcade release…
This actually is a short recording of the first game I deployed to my 360. It’s the “Spacewar” Starterkit for the XBOX 360. It compiled flawlessly and I deployed it:
On the 360 the things look like this:
So I just got me a 1-year membership of the XNA Creators Club, which means: I can now develop and run applications such as games on my 360…
Is any of my readers going to get a membership too?
The long awaited XNA Game Studio and it’s XBOX 360 game launcher counterpart is available for download. Hobbyist game developers rejoice!
“XNA Game Studio Express enables hobbyists, academics, and small, independent game developers to easily create video games for Windows and the Xbox 360 console using new, optimized cross-platform gaming libraries based on .NET. This official release enables the creation of games for Windows XP SP2-based PCs. Combined with an active membership in the XNA Creators Club (available from Xbox Live Marketplace), you can also create, debug, and play games on your Xbox 360 console.”
Oh. You have to have Windows XP SP2 at the moment to run XNA Game Studio Express:
“Only supported on Microsoft® Windows® XP SP2 (all editions) at this time. Windows Vista support will be available in an update to version 1.0 next year.”
Source: XNA Game Studio Express Download
The Internet Explorer Team just released a free, downloadable, pre-activated Windows XP SP2 image with Internet Explorer 6 installed. Grab it here. The image is time-bombed to expire in April 2007, but new versions (including images where Internet Explorer 5 is installed) are expected to be released.
“Many of you have asked how to run IE6 and IE7 in a side by side environment. As Chris Wilson blogged about early this year, it’s unfortunately not so easy to do. There are workarounds, but they are unsupported and don’t necessarily work the same way as IE6 or IE7 would work when installed properly. As Chris said, the best way to use multiple versions of IE on one machine is via virtualization. Microsoft has recently made Virtual PC 2004 a free download; we’ve taken advantage of that by releasing a VPC virtual machine image containing a pre-activated Windows XP SP2, IE6 and the IE7 Readiness Toolkit to help facilitate your testing and development. The image is time bombed and will no longer function after April 1, 2007. We hope to continue to provide these images in the future as a service to web developers.”