Today I wrote a file compressor in Visual Basic, which stores its data in PNG images. It's called Squash. Squash works by throttling the bytes of a file into a PNG image, storing 3 bytes per pixel in the Red, Green & Blue components. It works in a similar way to a ZIP file, but there is no extraction and apart from the extension (e.g. Document.docx.squash), the format is data/file type agnostic. Files with consistent byte patterns or 'blank' regions compress very well with Squash because these form solid or consistent areas in the graphic. Here are the results - Results Graphic[^] Squish is a free, single-executable file compressor. Just drag files on to Squash and find a .squash file in the same folder. Squash is great for instant messaging, and can greatly improve transfer times. If your contacts have Squash too, they can just open the received file and it gets decompressed on the fly. Just drop the EXE anywhere on your computer and start saving space - and time. Project Page on my Site[^] Download (EXE, 330k) Source (ZIP, 150k) If you go to the 'Project page on my Site' link, you can find the source and big explanation of how it works. The explanation is targeted towards beginners.
James Garner jadaradix
Posts
-
PNG Based File Compression in .NET -
General purpose Text editor or IDE -
Should Devs know how maths works?I'm 17. I first drew lines with a for loop on a beautiful ZX Spectrum +2 128k 6 years ago. I recently obtained a BBC Master and Dot Matrix printer which was lying around in the school biology lab since '88, complete with green CRT monitor, and ribbon print cartridges. I won't lie - my friend and I have 4 ZX Spectrums between us. I was lucky, dead lucky. I learnt to program in C for the Nintendo DS with 4mb of RAM. I still carefully selected between int sizes in .NET, and waste nary a bit or a cycle. The n00bs I see learning to program today have to jump in right at the top (you get me) and write the biggest mess, which still works fine. In fact, it works just as well as tight efficient code and they know no better. People should know the math.
-
Developer's Age !I'm 13 and I'm programming for Windows (VS 2008), Linux and the Nintendo DS. I'll defenitly investigate programming as my career, because I enjoy it and I don't think you can ever be "too old" (or too young) to do anything!