LoseThos: Programming As Entertainment

Pretty cool stuff:

LoseThos is for programming as entertainment.  It empowers programmers with kernel privilege because it’s fun.  It allows full access to everything because it’s fun.  It has no bureaucracy because it’s fun.  It’s the way it is by choice because it’s fun. LoseThos is in no way a Windows or Linux wannabe — that would be pointless. LoseThos is not trying to win a prize for low resource usage or run on pathetic hardware.  Low line count is a goal, though.  It’s 100,000 lines of code including a 64-bit compiler, tools and a graphics library.  It’s strictly 64-bit and could be configured to function with 32 Meg or less RAM, but who cares!   Where do you get a x86_64 machine with less than 32 Meg RAM?  With no multimedia, it’s hard to run out of memory on a modern home computer.

LoseThos was designed from scratch with a clean slate and has no compatibility with anything else. Source code is ASCII plus binary graphics data.  It has a new language roughly based C/C++.  It’s more than C and less than C++ so, maybe, it’s C+. I took every opportunity to improve things once I made a clean break with the past.  That’s another reason LoseThos has value — it is innovative.

I started with a command line like this:
Dir(“*.*”);

I added default parameters from C++:
Dir();

I said, “parentheses are stupid.”
Dir;

Now, I have a language which looks a little like pascal.  It also doesn’t have a main() routine — any statement outside a function executes immediately, in order. The command line feeds straight into the compiler (not an interpreter) and it doesn’t have that bullshit errno crap for return values — command line commands are regular C+ functions.

(via http://www.losethos.com/)


A/UX Penelope

Very cool informational site about the pre-OSX version of Apple Unix (A/UX). Totally piques my obscure hardware/software interest. 😉

AUX-2x2

From the author’s site:

Between the years 1987 and 1995, Apple Computers, Inc. developed a distribution of System V Unix for the Motorola 680×0-based Macintosh. Much of the initial porting work was performed by UniSoft Corporation, with the project being gradually handed over to Apple Engineers. (UniSoft ported several versions of Unix to Motorola 680×0-based platforms, including the early Sun workstations.)

Apple’s Unix (A/UX) was based on AT&T System V Release 2.2, as the industry had not yet “standardized” on SVR4. However, later versions of the operating system included features from SVR3, and SVR4, as well as BSD Unix 4.2 and 4.3 – TCP/IP networking, streams, Fast File System, job control, lpr, NFS, NIS (Yellow Pages), SCCS, and sendmail. It was a full-featured Unix OS. All of these features, along with a development package (fortran and C) and the X11R4 environment, were included in the base package. Note that these were costly add-ons in many contemporary Unix distributions such as Xenix and SCO Unix.

On top of this solid Unix foundation sat a Macintosh Finder – A full System 7 graphical environment that allowed the system to run both Unix and Macintosh programs, while providing a user-friendly interface. (Sound’s vaguely familiar, doesn’t it?) I’ve included some screenshots to satisfy the curiosity of casual visitors, and to whet the appetite of those who might install the operating system…

(http://www.aux-penelope.com/)

Best T-SQL Ever! (The T-SQL Mandelbrot)

This is just pure awesome, from a geek standpoint. Thanks to The Daily WTF and Graeme Job for sharing this wonderful little jewel of code and making my day just a bit more interesting. 😉

Here’s the quote from The Daily WTF:

“So I was bored at work one day,” Graeme Job explains, “and wondered, what’s the most useless thing I could do with my time without actually doing anything. Then it hit me. I could use T-SQL to generate… Mandelbrot.”

Graeme continued, “Following is a single T-SQL SELECT statement that generates a text-representation of a Mandelbrot Set. The results are best viewed in text-mode.”

You can grab the code from The Daily WTF, and run it via SQL Server Management Studio. Of course, I tried it myself, and got this result:

2008-11-20_113348

(via http://thedailywtf.com/Articles/Stupid-Coding-Tricks-The-TSQL-Madlebrot.aspx)

Claudia Castillo gets windpipe tailor-made from her own stem cells – Times Online

This seems like it should be huge news, but I actually had to dig a bit to find details on this story. It seems to be quite widely reported in the UK, but not so much in the US…

Claudia Castillo gets windpipe tailor-made from her own stem cells

A woman has been given a new section of windpipe created from her own stem cells in an operation that could revolutionise surgery.

Claudia Castillo, 30, who lives in Barcelona, has become the first person to be given a whole organ tailor-made for her in laboratories across Europe.

A graft from a donor was used, but because it has been imbued with Ms Castillo’s own cells, there is no sign that her body will reject the organ.

via Claudia Castillo gets windpipe tailor-made from her own stem cells – Times Online

Here’s a thumbnail of a PDF illustration from Times Online on how the procedure was performed:

bronchus

And here are some related links:

Open Camera RAW Files in Paint.NET!

Excellent collection of file type handlers and effects plugins for Paint.NET. Not the fastest ever at loading camera RAW images (takes about 5-8 seconds to load a CR2 from my Canon 30D), but it’s definitely helpful.

According to the website, it supports the following image types:

*.dcr DCR Digital Camera RAW Images
*.dng DNG Digital Camera RAW Images
*.eff EFF Digital Camera RAW Images
*.mrw MRW Digital Camera RAW Images
*.nef NEF Digital Camera RAW Images
*.orf ORF Digital Camera RAW Images
*.pef PEF Digital Camera RAW Images
*.raf RAF Digital Camera RAW Images
*.srf SRF Digital Camera RAW Images
*.X3F X3F Digital Camera RAW Images
*.crw CRW Digital Camera RAW Images
*.cr2 CR2 Digital Camera RAW Images

via Paint.NET – Megalo Effects & FileTypes Plugins

Consolas as CMD.EXE (Windows Console) Font

2008-09-15_130451

First, you’ll need the Consolas font. If you’re not currently running Windows Vista, then you’ll need to get it via the PowerPoint Presentation Viewer, which will install Consolas, among other nice Vista fonts. (Or, if you have Visual Studio 2005 or 2008, you can just grab the Consolas Font Pack for Microsoft Visual Studio 2005 or 2008)

Once you have this font installed, open up Registry Editor (regedit.exe) and navigate to the following key, as shown below:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont\

2008-09-15_125937

Then, right click in the blank area and choose New > String Value.

Double click this new value and enter the following information:

Name: 00
Data: Consolas

Your window should now look like this:

2008-09-15_130000

Once this is done, open a console window (cmd.exe) and choose Consolas from the Font tab:

2008-09-15_131335

Thanks to Scott Hanselman’s Computer Zen for the tips on how to set this up! 🙂

Update: There seems to be an easier way to do this, as I just found from the IEBlog:

Bryn Spears on the Internet Explorer team gave me the following simple instructions to turn on Consolas in the CMD Window:

reg add “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont” /v 00 /d Consolas

logoff

Note: In Windows Vista, you need to run the reg command from an elevated command prompt.

When you log back in, Consolas will be an option in the “Command Prompt” Properties.  (n.b., Bryn tells me it actually shows up before you relog, but it won’t work.)

Canon EOS 50D SLR

It’s a bit surprising to me how quickly Canon is skipping over the 40D; I purchased a 30D at the end of its sales life (and was able to get the nicer 28-135mm lens shown below as part of the kit), right before the 40D came out, just about a year ago..

canon_eos50d-thumb-450x505

Canon today strengthens its EOS range with the addition of a powerful new digital SLR: the EOS 50D. A newly designed 15.1 Megapixel CMOS sensor delivers ultra-detailed, low-noise images – ideal for large-scale reproduction or creative cropping. Canon’s new DIGIC 4 processor is fast enough to allow up to 6.3fps continuous shooting, in bursts of up to 90 JPEGs with a UDMA card. Used with Canon’s wide area AF system, which locks onto subjects with 9 individual cross type sensors, stunning action sequences can be captured – even in low-light conditions. A new 3.0” Clear View VGA LCD provides extra-large and wide angle-of-view image review, with plenty of clarity for accurate focus checks in playback. By switching to Live View mode – which displays a real-time image on the LCD – photographers can enjoy simplified shooting from awkward angles, or connect to a PC for remote shooting.

(continued via fareastgizmos.com)

Ridiculous Subversion Behavior

Damn SVN

Yesterday, I attempted to move some of our content from a local filestore into our main subversion repository. I copied the files to my computer, all 22472.67 megabytes of it, and used TortoiseSVN to import the data to our repository.

Being that it was over 22GB of data, I expected it to take a very long time, and it did, 310 minutes and 3 seconds (approx. 5.2 hours). What I didn’t expect was that TortoiseSVN neglected to check for commit/import requirements *before* the import process and waited 5.2 hours, after all the data had been transferred, to tell me:

Error: WHOOPS! Insufficient Log Message. Must be greater than 10 characters.

Wow. Whoops, I just wasted 5 hours of my computing time and network bandwidth to import 22GB of data that was immediately reverted *after* the whole process should have been completed.

Don’t get me wrong, I love Subversion to death, and TortoiseSVN is an awesome client. This behavior, though, seems pretty ridiculous to me.

What do you think?

How-To Geek: Using Symlinks in Windows Vista

I haven’t tried using my favorite XP junction tool, NTFS-Link, since I upgraded my home computer to Windows Vista, and I’m a little apprehensive since the filesystem has changed a bit. Nonetheless, if you are still using XP, NTFS-Link is an excellent tool for those of you already familiar with symbolic links via other operating systems, such as Linux.

Luckily, Windows Vista does include a command-line tool for creating symbolic links, similar to “ln” in Linux. However, it’s not quite as straightforward. Here’s the scoop from How-To Geek:

Using the mklink Command

The command that you need to use is mklink, which you’ll use from the command line. Just type it on the command line to see the options:

C:Usersgeek>mklink
Creates a symbolic link.

MKLINK [[/D] | [/H] | [/J]] Link Target

        /D      Creates a directory symbolic link.  Default is a file
                symbolic link.
        /H      Creates a hard link instead of a symbolic link.
        /J      Creates a Directory Junction.
        Link    specifies the new symbolic link name.
        Target  specifies the path (relative or absolute) that the new link

(continued via Using Symlinks in Windows Vista)

Gmail Blog: Outage Explanation

In response to the outage of Gmail from yesterday, the Official Gmail Blog has posted an apology:

Many of you had trouble accessing Gmail for a couple of hours this afternoon, and we’re really sorry. The issue was caused by a temporary outage in our contacts system that was preventing Gmail from loading properly. Everything should be back to normal by the time you read this.

We heard loud and clear today how much people care about their Gmail accounts. We followed all the emails to our support team and user group, we fielded phone calls from Google Apps customers and friends, and we saw the many Twitter posts. (We also heard from plenty of Googlers, who use Gmail for company email.) We never take for granted the commitment we’ve made to running an email service that you can count on.

We’ve identified the source of this issue and fixed it. In addition, as with all issues that affect Gmail and our other services, we’re conducting a full review of what went wrong and moving quickly to update our internal systems and procedures accordingly. We don’t usually post about problems like this on our blog, but we wanted to make an exception in this case since so many people were impacted. In general, though, if you spot a problem with your Gmail account, please visit the Gmail Help Center and user group, where the Gmail Guides are your fastest source of updates.

Again, we’re sorry.

(via Official Gmail Blog – We feel your pain, and we’re sorry)

Canon EOS 5D Mark II…my next camera.

Update: New post, new information available here:
New Teaser Ad for Canon 5D Mark II, 50D compared.

From Gizmodo:

The calendar tells us that the 5D, Canon’s second best DSLR range, is due for a refresh. It comes from a message board, so take this with a grain of salt, but someone on DP Review forums has posted specs for a second generation 5D with the following changes: A modest 15.3MP up from 12.8MP, and a massive 2 stop bump in light sensitivity to 25600 ISO.

The cam will supposedly shoot at 6fps instead of 3, and will have dual Digic III processors instead of a single Digic II cpu. The AF system will use 29 points instead of 9, and it’ll have the same weather sealing as the topline 1Ds Mark III, as well as live view. The announcement is supposed to come on April 22nd, at $3500. That’s a lot of stat smather, but the bottom line is that Nikon’s D300 better watch its ass.

This is definitely going to be my next camera. I had been thinking about getting a 5D as an upgrade for my 30D for some time, but I’m willing to wait to see what happens with this one. Unfortunately, it probably won’t be priced as reasonably as the current 5D is now. =P

http://gizmodo.com/367086/canon-5d-mark-ii-rumored-specs-and-details

Also:

VirtualBox: Free Virtualization Software

800px-VirtualBox

I’ve been using VMware Player for quite some time, and it’s quite good, but recently, I stumbled upon another free virtualization tool which also allows you to create new VM images (VMware Player only plays back VMware images created with a purchased version, such as VMware Workstation, or through a website such as EasyVMX: http://www.easyvmx.com/)

According to Wikipedia (http://en.wikipedia.org/wiki/VirtualBox):

VirtualBox is an x86 virtualization software package originally created by German software company Innotek and now being developed by Sun Microsystems as part of its Sun xVM virtualization platform. It is installed on an existing host operating system; within this application, additional operating systems, each known as a Guest OS, can be loaded and run, each with its own virtual environment. For example, Linux can be guest hosted on a single virtual machine running Microsoft Windows XP as the Host OS; or, XP and Windows Vista can run as guest OSes on a machine running OpenSolaris.

Supported host operating systems include Linux, Mac OS X, OS/2 Warp, Windows, and Solaris, while supported guest operating systems include FreeBSD, Linux, OpenBSD, OS/2 Warp, Windows and Solaris.[1]

According to a 2007 survey by DesktopLinux.com, VirtualBox is the third most popular software package for running Windows programs on Linux desktops.[2]

So far, so good, with the exception of a little glitch I experienced while installing FreeDOS. Ubuntu runs quite well, and quite fast, as far as I can tell.

A particularly cool element of VirtualBox is the “Seamless Desktop” mode, similar to what is found in Parallels or VMware Fusion on the Macintosh:

750px-Virtualbox15seamless

Considering the level of functionality given for free, which is quite similar to the functionality you’d have to pay for in VMware or Parallels, I’m tempted to stick with VirtualBox for the near future and put it through its paces.

If you’re curious about VirtualBox yourself, you can find a copy here:

http://www.virtualbox.org/wiki/Downloads

and more directly, here:

Sun xVM VirtualBox 1.6 Download

Update:

Here are some links to download pre-made VirtualBox images:

http://virtualbox.wordpress.com/

http://sourceforge.net/project/showfiles.php?group_id=213555

Assembla: Free hosted SVN and more…

I’ve spent quite some time looking for a hosted Subversion repository that had a cheap or free trial option so that I could migrate my locally hosted repository (seems silly to host your repository on your own machine, doesn’t it?) to somewhere online.

Assembla

Guess I wasn’t looking well enough, because today I (finally) stumbled upon a solution which meets all of my needs and more, Assembla.

If you’re looking for a place to host your development projects, I’d highly suggest Assembla, even if only for the *free* hosted Subversion repository which can be made private or public, unlike other free services which only offer public open-source hosting. Not that I’m knocking Sourceforge or Google Code, it’s just that I’m working on a consulting project that can’t be left out in the open (as I’m sure is the case with many of you out there as well).

Here’s a list of their plans (current as of this posting):

2008-06-22_143510

…and since you probably can’t read that without clicking on the expanded image, here’s the link to their pricing plans: http://www.assembla.com/tour

The array of development tools they have to offer is quite impressive, and I’m seriously considering upgrading to the Commercial plan ($12.50/month) to get more space.

Subversion, trac, git, mercurial

For what it’s worth, Box.net, if you’re listening – you should really consider offering (real) WebDAV support and/or Subversion through your API, because *that* would make your site the killer app I’ve been waiting/paying for.

Also, here’s another great post with information about Assembla:
http://coding-time.blogspot.com/2008/04/free-subversion-wiki-at-assemblacom.html

…and they also have a great post about Subversion and how it works:
http://coding-time.blogspot.com/2008/04/subversion-visually-explained-in-30sec.html

How-To Geek: “Terminal Server Has Exceeded the Maximum Number of Allowed Connections” (Remote Desktop)

Great fix for a problem I commonly have at the office:

If you’ve worked on a network with Windows servers, you’ve encountered this error message at least 37,000 times:

“The terminal server has exceeded the maximum number of allowed connections. The system can not log you on. The system has reached its licensed logon limit. Please try again later.”

This problem happens because Windows only allows two remote terminal services connections when you are in administrative mode, and you’ve either got two people already on that server, or more likely, you’ve got a disconnected session that still thinks it is active.

The problem with this error is that you have to actually get on the server console to fix the problem if the server isn’t in a domain. (If you are in a domain, then just open Terminal Services Manager and log off or disconnect the sessions)

(keep reading via Command Line Hack for: “Terminal Server Has Exceeded the Maximum Number of Allowed Connections”)

Channel9 (MSDN): Windows XP on Flash-Based Ultra Low Cost PCs

Great post from Channel9 with video about Windows on ULPCs, like the Asus Eee:

How does Windows perform on ultra low cost PCs with less than 2GB of storage? Mark Light and Bohdan Raciborski from the Unlimited Potential Group discuss the challenges and opportunities with flash-based storage and getting Windows XP and Office 2003 up and running—surprisingly quickly—on this new class of devices, including the Asus Eee PC. Today Microsoft also released design guidelines to help hardware manufacturers enable a quality Windows experience for this emerging class of low cost computing machines that will help to democratize personal computing by providing a powerful and full version Windows-powered device for low income markets.

(via Windows XP on Flash-Based Ultra Low Cost PCs)

Regarding Base-64: Trying to solve an ASP.NET issue…

Update: Thanks to WordPress.com automagically linking related posts to each other, I think I may have found a potential solution to this issue here: Invalid character in a Base-64 string (ASP.NET)

The problem seems to be with the ViewState. The ViewState is encrypted, and when an attempt is made to decrypt it on postback, the error is triggered.  The solution is actually quite simple: in the web.config file, set the ViewState not to be encrypted, like this:

<system.web>
<pages viewStateEncryptionMode=”Never”>
</pages>
</system.web>

You should really check out the rest of that article; it looks like it’s got a great explanation for what is actually occurring.

Also, this seems to be related to another message, “Invalid Viewstate.”

My original article is below the fold…

Continue reading “Regarding Base-64: Trying to solve an ASP.NET issue…”