<?xml version="1.0"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>CrAZzY.se</title>
		<link>http://crazzy.se/</link>
		<description>CrAZzY's own personal site and blog.</description>
		<language>en-us</language>
		<generator>CrAZzY-CMS 1.0</generator>
		<webMaster>webmaster@crazzy.se (Johan Hedberg)</webMaster>
		<managingEditor>webmaster@crazzy.se (Johan Hedberg)</managingEditor>
		<docs>http://cyber.law.harvard.edu/rss/rss.html</docs>
		<atom:link href="http://crazzy.se/blog/rss" rel="self" type="application/rss+xml" />

		<lastBuildDate>Tue, 17 Aug 2010 23:30:39</lastBuildDate>
			<item>
				<title>New mailserver</title>
				<link>http://crazzy.se/blog/new-mailserver</link>
				<description>I've setup a new mailserver this evening. Good to refresh some knowledge about mailservers. I think I got it quite good. This particular setup uses postfix with mysql backend for the virtual domains and dovecot for authentication and IMAP/POP. I use spamassasin via amavis for content filtering, SPF checks to get around fake sender addresses and greylisting to get rid of newbie spammers.
Oh and you guys/girls who's got blogs hosted by me, this new mailserver is for you. I'll write at new module for the control panel so you can manage mail accounts on your domains some day this week. (And of course I'll fix the DNS entries for you :P)</description>
				<guid>http://crazzy.se/blog/new-mailserver</guid>
				<pubDate>Tue, 17 Aug 2010 23:30:39</pubDate></item>
			<item>
				<title>My new life</title>
				<link>http://crazzy.se/blog/my-new-life</link>
				<description>I feel like I've been reborn or something. I've got this wonderful new job on Loopia and I've got a new apartment in a big city. Really getting my stuff together.
When it comes to geeky things it all gets better on that front too. I got this assignment to write about Stored Procedures and Triggers in MySQL. I've never used those, just knew losely what they were. But I read the MySQL manual for like 2-3 minutes and I suddenly just understood it all. I was able to write about things I've never touched that easy! That's an awesome feeling.
Bbl, busy having a good life :P</description>
				<guid>http://crazzy.se/blog/my-new-life</guid>
				<pubDate>Mon, 16 Aug 2010 18:44:16</pubDate></item>
			<item>
				<title>Apache out, nginx in!</title>
				<link>http://crazzy.se/blog/apache-out-nginx-in</link>
				<description>Now I've finally got my lazy self to start migrating my primary webserver to nginx. I've been dragging it since I have 50 vhosts to convert. It's not all about writing a few vhost lines. I have to convert all the horrible rewriterules too. Regexp isn't really my strongest side so for me that's the tough part.
About halfway through the workload now. Then it's just to verify that it all works nicely on all vhosts and throw out apache. Next up is converting HaKT Studios for running on nginx and php-fpm. Then I'll never have to touch apache again. (Well, at least not on the boxes I admin.)</description>
				<guid>http://crazzy.se/blog/apache-out-nginx-in</guid>
				<pubDate>Mon, 05 Jul 2010 02:00:00</pubDate></item>
			<item>
				<title>Hedberg Productions</title>
				<link>http://crazzy.se/blog/hedberg-productions</link>
				<description>Created a small awfully designed site for my company &quot;Hedberg Productions&quot;. It's not really meant to be taken seriously. Mainly just a placeholder until I can get a real design done. Though that can take a while, took about 4 years for this site to get a decent design. ;)</description>
				<guid>http://crazzy.se/blog/hedberg-productions</guid>
				<pubDate>Tue, 29 Jun 2010 21:58:03</pubDate></item>
			<item>
				<title>My hosting environment</title>
				<link>http://crazzy.se/blog/my-hosting-environment</link>
				<description>I've setup a complete hosting environment which is more secure than most shared hosts. I currently only host my IRL friends there, but maybe more later on. My setup is based upon nginx/php-fpm. Everything is completely chrooted, not a chance on seeing each others files. Disk quotas are in place and an automatic backup system too.
Not going to share any specific details of my config in terms of scripts and so on. But I'm going to share a pdf on how you can get a system much like this:
Web hosting configuration</description>
				<guid>http://crazzy.se/blog/my-hosting-environment</guid>
				<pubDate>Wed, 23 Jun 2010 18:41:28</pubDate></item>
			<item>
				<title>DNS structure updated</title>
				<link>http://crazzy.se/blog/dns-structure-updated</link>
				<description>It went faster than I thought. New admin interface, renamed nameservers and a new backend which is much more secure. The servers doesn't need accounts on each other. But it's still a secure transfer. This new method has the advantage that if ns1 gets hacked the other servers will remain intact.
So those of you with accounts can now log in and see vast improvements. ;)</description>
				<guid>http://crazzy.se/blog/dns-structure-updated</guid>
				<pubDate>Thu, 17 Jun 2010 16:53:29</pubDate></item>
			<item>
				<title>DNS improvement</title>
				<link>http://crazzy.se/blog/dns-improvement</link>
				<description>Going to change my DNS infrastructure quite alot. I will spread 4 servers under 2 domains (different TLD), 4 AS's and 3 countries. Two under nsdomain.se will be located in Stockholm, Sweden. The other two under nsdomain.net will be located in London, UK and Dallas, US.
This also includes a completely new DNS management system with automated scripts grabbing all data from the DB. A new and much better UI too. ETA for this is about 2 months. (Long ETA, takes quite a while to transfer the .net domain and get glue's for it.)</description>
				<guid>http://crazzy.se/blog/dns-improvement</guid>
				<pubDate>Sun, 06 Jun 2010 11:20:55</pubDate></item>
			<item>
				<title>IRC security</title>
				<link>http://crazzy.se/blog/irc-security</link>
				<description>I've found an interesting thing, FiSH. It's a tool for IRC encryption. I've only read briefly about it, haven't had time to test it yet, but I will do it. It seems you just exchange keys with the ones you wanna chat encrypted with and from that point on it's secure no matter what kind of IRC network you happen to use.
I'm also going to try and create an implementation of challenge-auth for xchat. I'm not very happy with Quakenet being non-ssl. I know that anyone can log anything that happens on the IRC, but that's not the point. Every IRC network should have SSL so the users at least don't have to send their password in the clear. Anyway, gonna give a report on this one too.</description>
				<guid>http://crazzy.se/blog/irc-security</guid>
				<pubDate>Sun, 06 Jun 2010 01:57:20</pubDate></item>
			<item>
				<title>Linux Mint Search</title>
				<link>http://crazzy.se/blog/linux-mint-search</link>
				<description>Linux Mint is a very nice distribution for the average desktop computer. On the desktop I don't wanna think about getting good flash support, tons of codecs, printer drivers, bluetooth stuff and so on. I want all proprietary stuff from the beginning.
However, they have a habit of destroying the searchbox in firefox. It leads to their custom google search. Yes I know they do it to earn a few dollars and yes they deserve the money. Problem is just that the custom search have a very strange layout and doesn't have all google features.
So here's how to restore the usual google search. Find the following files on your system:
/usr/lib/firefox-addons/searchplugins/google.xml
/usr/lib/firefox-addons/searchplugins/en-GB/google.xml
/usr/lib/firefox-addons/searchplugins/en-US/google.xml
/usr/share/linuxmint/common/artwork/firefox/google.xml
Then in all those, take out the &quot;cse&quot; part of the template URL. Next take out the &quot;cx&quot; param which is just the Mint custom search id. And lastly change the searchform URL to just &quot;http://www.google.com/&quot;. Do these steps for all files, save them and restart firefox. Done!</description>
				<guid>http://crazzy.se/blog/linux-mint-search</guid>
				<pubDate>Thu, 03 Jun 2010 03:27:29</pubDate></item>
			<item>
				<title>Underground Systems</title>
				<link>http://crazzy.se/blog/underground-systems</link>
				<description>I've finally uploaded the US archive, more information can be found on HaKT Studios. Please don't say a word about how ugly it looks. It took me 5 days to download it all, and it's already raping my bandwidth. (In total it's 7,7GB of html.) And when google find out about it we may have some help searching through the data. (I don't have the time to build a search engine and index.)</description>
				<guid>http://crazzy.se/blog/underground-systems</guid>
				<pubDate>Thu, 03 Jun 2010 02:42:21</pubDate></item>
			<item>
				<title>Kompilator.se rebuild</title>
				<link>http://crazzy.se/blog/kompilator-se-rebuild</link>
				<description>
I'm going to rebuild my online compiler. Adding the ability to upload a compressed archive of code, running the Makefile and then giving a download of the now compiled code in the same compressed archive. And of course still offering single-file compilations.
I'll also let my current pastebin merge with the compilation site. And put up some programming/development tutorials. I think this is a natural evolution of that service. However I'd like some comments on this, is it bad? Is it good? Any feature requests? Other suggestions?</description>
				<guid>http://crazzy.se/blog/kompilator-se-rebuild</guid>
				<pubDate>Sun, 23 May 2010 23:21:46</pubDate></item>
			<item>
				<title>URL shortener updated</title>
				<link>http://crazzy.se/blog/url-shortener-updated</link>
				<description>On request by Mark I've updated my URL shortener with an english translation. Some of the error messages contains internal jokes originating from a swedish webddev IRC channel though. ;)
On a side note, I've got an extremely bigsized todo.txt, it'll take a while to go through it. Most of it is schoolwork. I had forgotten how much you have to work in school. :(</description>
				<guid>http://crazzy.se/blog/url-shortener-updated</guid>
				<pubDate>Thu, 20 May 2010 14:05:43</pubDate></item>
			<item>
				<title>C++ Linked lists</title>
				<link>http://crazzy.se/blog/c++-linked-lists</link>
				<description>
I've written a small C++ library for implementing multiply-linked lists. There's still some more stuff to do with it. But nothing ever gets 'done'. You always have to extend and fix software. It builds both as static lib and as a shared one.
A small API documentation is included in the tarball. Download here!</description>
				<guid>http://crazzy.se/blog/c++-linked-lists</guid>
				<pubDate>Sun, 02 May 2010 17:35:13</pubDate></item>
			<item>
				<title>Debian: killall</title>
				<link>http://crazzy.se/blog/debian-killall</link>
				<description>Was installing VMware tools on a VM last night. It needed the &quot;killall&quot; program. It took some time googling to find out which package contained it. &quot;apt-get install psmisc&quot; will do it. Just putting that here for the sake of spreading information. There really should be an easier way of searching packages by package content. Maybe I'll feel like coding something like that.
</description>
				<guid>http://crazzy.se/blog/debian-killall</guid>
				<pubDate>Fri, 09 Apr 2010 20:27:09</pubDate></item>
			<item>
				<title>PSD to code</title>
				<link>http://crazzy.se/blog/psd-to-code</link>
				<description>Just wanna throw in a recommendation for converting a PSD web design into code.
North Media Group did it quick and with good quality for a reasonably good price. Very good for a pure programmer like me. Never touched photoshop and not going to either since others can do it for me. ;)</description>
				<guid>http://crazzy.se/blog/psd-to-code</guid>
				<pubDate>Wed, 07 Apr 2010 17:34:26</pubDate></item>
			<item>
				<title>HaKT Studios</title>
				<link>http://crazzy.se/blog/hakt-studios</link>
				<description>HaKT Studios is up and running again. This time as a forum-based community. We've just started out but is working hard to get much done. So I've put up a Hacking Challenge for those who's up for it. The goal is to put your handle in a file in /root. First one to do that wins.

There's no real price, it's more about having fun, learning new stuff and showing off. There's a site on the box (which shall remain intact) that you can use to easily get shell. Hacking Challenge site. So get going on it people. ;)
</description>
				<guid>http://crazzy.se/blog/hakt-studios</guid>
				<pubDate>Mon, 05 Apr 2010 02:45:39</pubDate></item>
			<item>
				<title>Really strong beer</title>
				<link>http://crazzy.se/blog/really-strong-beer</link>
				<description>Today my package with one 33cl bottle of Tactical Nuclear Penguin arrived from Brew Dog. And I couldn't really resist to open it up now in the evening and try it out. It smells kinda like a good whisky. It's a very very dark beer, kinda like Coca-Cola colorwise. The taste then, it's very hard to describe. You really have to try it yourself. Think beer, then think whisky, then think vodka. Mix that up, and make it taste mostly like beer, then you've got it. And the bottle looks like this:
</description>
				<guid>http://crazzy.se/blog/really-strong-beer</guid>
				<pubDate>Mon, 29 Mar 2010 22:56:04</pubDate></item>
			<item>
				<title>NetBSD killed my disk</title>
				<link>http://crazzy.se/blog/netbsd-killed-my-disk</link>
				<description>Okay, doing a systemwide-update maybe weren't a very clever idea. The machine have been going non-stop for 6 days now, doing nothing other than compiling loads of applications and libraries. Apparantly the 160gb 2,5&quot; sata2 drive from samsung couldn't take that. It's now as dead as it can be. The OS crashed with an enourmous backlog of diskrelated errors of all kinds.
This was probably my own fault since I'm not very skilled in NetBSD. There is probably a much faster and healthier way to update packages. Well, I guess I have to find that out whenever I can afford a new disk. (Which as of now will take a while, money is tough.)</description>
				<guid>http://crazzy.se/blog/netbsd-killed-my-disk</guid>
				<pubDate>Thu, 25 Mar 2010 03:34:30</pubDate></item>
			<item>
				<title>NetBSD</title>
				<link>http://crazzy.se/blog/netbsd</link>
				<description>I decided to try on a new OS. Something I've never used before, NetBSD. I've got some very small experience of OpenBSD. I once had a Sparcstation 4 that netbooted OpenBSD off an Ultra 10 running Debian. That's about it when it comes to me and BSD.
I like that NetBSD runs on almost anything. And it has a very large package repository. And installing new applications is very simple. Plus the package system can either install a precompiled binary or build it from source for me. However, the updating of the whole system (All packages) sucks. &quot;cd /usr/pkgsrc &amp;&amp; make update&quot; &amp;lt;- That command has been running for 5 days now on my testing box. It has only a standard NetBSD install, X11 and Xfce4. And it's not a weak computer, but not mean either. An Intel Core2Duo and 2GB RAM.
So, whenever this updating is done some more reviewing of the system will be done. I just don't know how long it'll take. It may take another hour, a day, a week or a month. No idea at all. :)</description>
				<guid>http://crazzy.se/blog/netbsd</guid>
				<pubDate>Tue, 23 Mar 2010 03:24:15</pubDate></item>
			<item>
				<title>Work, work, work...</title>
				<link>http://crazzy.se/blog/work-work-work</link>
				<description>I've been on a telemarketing job for two weeks now. I never thought it'd be that high of a pressure on the mind. Imagine the feeling of physically not tired at all, but totally wasted mentally. My mind is kind of not made for calling several hundred different people per day. That's why there ain't any development being done anywhere.
Though I've managed to find time for setting up a fifth nameserver (ns5.nsdomain.se) and configure ipv6 on ns2-ns5. Since none of my colo/vps operators supports ipv6 fully yet all the connections are tunneled via Hurricane Electric for free.
Also I'll move in the near future, it's now exactly a week until I have the keys to my new apartment. It'll be nice. I may drop out of internet a few days (depends on if my electric power works and I can be arsed to tether my iPhone).

My focus for the little spare time I have will be on getting my sites up and working, quickly and with good quality. ;)</description>
				<guid>http://crazzy.se/blog/work-work-work</guid>
				<pubDate>Fri, 19 Feb 2010 23:07:43</pubDate></item>
			<item>
				<title>Site updated</title>
				<link>http://crazzy.se/blog/site-updated</link>
				<description>I've updated my site a little bit tonight. An updated design with focus on a customizable user interface. The sidebar items can be sorted and drag 'n drop'ed between the sidebars. Also content is sortable, like on the blog index where you can sort the posts.

So what do you think of these changes? Write a comment! (It's kinda dead in the comments....)
</description>
				<guid>http://crazzy.se/blog/site-updated</guid>
				<pubDate>Mon, 08 Feb 2010 03:58:00</pubDate></item>
			<item>
				<title>Gaining traffic</title>
				<link>http://crazzy.se/blog/gaining-traffic</link>
				<description>Most people have a website these days. And alot of those people feel that it would be nice with a little traffic. Other people actually using your sites. That's actually not so hard to fix. First make sure that you actually have some nice service or alot of good content.
When you have the content or a good service, it's time to get some users. Google adwords is awesome for exactly that part. Of course it costs money to advertise, but you can get some adwords money for free here. I've tried it on my online compiler. I got 150 new unique visitors per day. So it actually works, and as long as you have a coupon, it's free. ;)</description>
				<guid>http://crazzy.se/blog/gaining-traffic</guid>
				<pubDate>Sun, 07 Feb 2010 02:56:48</pubDate></item>
			<item>
				<title>URL shorterner :)</title>
				<link>http://crazzy.se/blog/url-shorterner</link>
				<description>What do a geek do when he's bored? He code something extremely simple, yet quite useful. So the clock was about 04:00 in the night, and I had nothing to do. I looked a bit in my list of domains for something that wasn't being used and didn't require a very serious project. I chose &quot;crz.se&quot; and started coding an URL shorterner. Took about 10 minutes or something, simple as that. Then linked it in an web-centered irc channel. A few improvements came out of that. (As caring to check if it's actually a link.) Anyway, one domain less that's &quot;just laying around&quot;.</description>
				<guid>http://crazzy.se/blog/url-shorterner</guid>
				<pubDate>Sat, 06 Feb 2010 05:24:20</pubDate></item>
			<item>
				<title>Kompilator.se update</title>
				<link>http://crazzy.se/blog/kompilator.se-update</link>
				<description>I'm working on an awesome update for kompilator.se. When that's done it'll have alot more features. I'm currently looking at support for C, C++, Obj-C and Java. And also making it possible to compile for 32bit Linux, 64bit Linux and 32bit Windows!.

I'll also update the awful &quot;design&quot; it has. As well as probably supporting some more human languages.
</description>
				<guid>http://crazzy.se/blog/kompilator.se-update</guid>
				<pubDate>Wed, 03 Feb 2010 02:18:09</pubDate></item>
			<item>
				<title>Spotify invites</title>
				<link>http://crazzy.se/blog/spotify-invites</link>
				<description>I'm tired of the blue bar reminding me of the invites I have laying around. So I'll just post them here for someone to use.

ghHYhHBe9ggb6LD7
meRSJNVJTRmwHkcz
ZKz6B9Z4GDa8eaEb
eREVMWngcnfUSzKx

That's better, now I don't have an ugly blue bar in spotify. :)
</description>
				<guid>http://crazzy.se/blog/spotify-invites</guid>
				<pubDate>Sun, 31 Jan 2010 15:38:50</pubDate></item>
			<item>
				<title>Logitech G19 Media keys</title>
				<link>http://crazzy.se/blog/logitech-g19-media-keys</link>
				<description>I've just managed to get the media keys of my Logitech G19 keyboard to work in Linux. Not by myself though, I had great help from Mark. But anyway, I'll post the solution here so almighty google picks it up. When we had found out the keycodes for the keys, it was a piece of cake. All you have to do is to add the following to your ~/.Xmodmap.

keycode 144 = XF86AudioPrev
keycode 153 = XF86AudioNext
keycode 160 = XF86AudioMute
keycode 162 = XF86AudioPlay
keycode 164 = XF86AudioStop
keycode 174 = XF86AudioLowerVolume
keycode 176 = XF86AudioRaiseVolume

If you don't have an .Xmodmap in your home directory, run this: &quot;xmodmap -pke &gt; ~/.Xmodmap&quot;. Then just edit the file in kate, gedit, nano or whatever you may prefer. When you've done that, run this: &quot;xmodmap ~/.Xmodmap&quot;. That'll load your configuration. Now proceed to configure this as keyboard shortcuts in your favorite desktop environment.
</description>
				<guid>http://crazzy.se/blog/logitech-g19-media-keys</guid>
				<pubDate>Thu, 28 Jan 2010 07:22:08</pubDate></item>
			<item>
				<title>Thoughts about RFID</title>
				<link>http://crazzy.se/blog/thoughts-about-rfid</link>
				<description>I stumbled upon a informative site about the downsides of RFID. It's really something to think about. The information society is becoming too much of a big brother constantly watching us.</description>
				<guid>http://crazzy.se/blog/thoughts-about-rfid</guid>
				<pubDate>Wed, 27 Jan 2010 18:02:35</pubDate></item>
			<item>
				<title>Winter-een-mas!!</title>
				<link>http://crazzy.se/blog/winter-een-mas</link>
				<description>As all the real geeks out there already knows, it's Winter-een-mas now! So game on, day as night. We shall never fail the gaming gods.</description>
				<guid>http://crazzy.se/blog/winter-een-mas</guid>
				<pubDate>Tue, 26 Jan 2010 06:10:32</pubDate></item>
			<item>
				<title>Spam management</title>
				<link>http://crazzy.se/blog/spam-management</link>
				<description>
The biggest issue as I see it when coding your own blogging system is how to handle the spam. Captcha? Magic letters? Calculations? Ignore it? No, use akismet instead! I've got over one thousand spam comments on this blog since I recreated it. And 3, I think, have gotten through the filter. That's kinda awesome.


Akismet was invented for being used in wordpress, but have standalone API's for other systems too. I used one of the third party API's in my code. The comments are stored in the database even if they're spam. I just have a field in the table for my comments called &quot;spam&quot;. If it's 0, fine show the post on the blog. If it's 1, it's spam and isn't shown. That's about it, simple and effective.
</description>
				<guid>http://crazzy.se/blog/spam-management</guid>
				<pubDate>Thu, 21 Jan 2010 14:11:00</pubDate></item>
			<item>
				<title>PHP htmlspecialchars()</title>
				<link>http://crazzy.se/blog/php-htmlspecialchars</link>
				<description>The PHP function htmlspecialchars() is very widely used to protect against SQL injections. Today I found the problem when posting comments. When a singlequote was in the text field a database error occured. That was because htmlspecialchars() didn't actually filter as it should. So ALL web applications relying on that function for &quot;security&quot; is in fact extremely vulnerable to SQL injections.
But I recommend that you keep filtering input data with it to get rid of html tags that may be inserted. But before that you should use another function to really escape strings and protect yourself. You should use mysql_real_escape_string() for that. Works awesomely.
So for now my input filtering looks, like this.</description>
				<guid>http://crazzy.se/blog/php-htmlspecialchars</guid>
				<pubDate>Sun, 17 Jan 2010 01:22:35</pubDate></item>
			<item>
				<title>PhpBB3 aint good</title>
				<link>http://crazzy.se/blog/phpbb3-aint-good</link>
				<description>phpBB3 is probably the worst prebuilt web software that I've used. It functions good as a forum. But what if you want more? I wanted to have another script run as a cronjob to automatically fetch content from rssfeeds and post it. Fetching it, parsing and skipping content I have is easy. But inserting that data in the database is like a living hell.
The phpBB3 database is awfully designed. And their bbcode engine is even worse. Who in their right mind would want a post-unique id for all bbcodes? There's absolutely no use of that. Not one single other forum software does it. And even though all is as it should be in the database, and the threads and posts appear, the bbcodes are messed up. The parser doesn't parse the ending tags. Of course they have the bbcode-uid correctly set.
Next point of failure is when I tried to interface with phpBB3's own code. The code doesn't have a easy to follow flow. And absolutely nothing looks like it is php. And it aint possible to reuse any of phpBB3's code without using it all, and from the browser. The codebase can't be used by thirdparty scripts like mine. &amp;lt;/rant&amp;gt;</description>
				<guid>http://crazzy.se/blog/phpbb3-aint-good</guid>
				<pubDate>Sat, 16 Jan 2010 15:14:43</pubDate></item>
			<item>
				<title>Extending my NAS</title>
				<link>http://crazzy.se/blog/extending-my-nas</link>
				<description>Today I noticed that my Synology DS509+ had support for running php scripts. So I thought of coding some simple kind of search &amp;amp; download script for my NAS. And then run it from the built in web server. It'll be fun. But to search through 7TB of data I need some kind of index. That means I need to code a C app too. And the NAS runs on PPC.

So currently creating a cross-compiling toolchain for powerpc-linux. Binutils is a bitch, the code doesn't compile. :( Will have to search the net for a patch. I can't really skip the assembler. Hate when vanilla source is buggy.
UPDATE: The binutils problem is long gone, it was a retarded default compiling option. Treating warnings as errors. Adding --disable-werror to the configure line solved it quickly.
</description>
				<guid>http://crazzy.se/blog/extending-my-nas</guid>
				<pubDate>Fri, 15 Jan 2010 23:31:36</pubDate></item>
			<item>
				<title>Weed and math</title>
				<link>http://crazzy.se/blog/weed-and-math</link>
				<description>I just have to blog about this, math can be really cool at times. Imagine it, math and weed, hand in hand. There is a formula to express weed! Here's the weed!
</description>
				<guid>http://crazzy.se/blog/weed-and-math</guid>
				<pubDate>Fri, 15 Jan 2010 03:53:50</pubDate></item>
			<item>
				<title>Why I jumped off school</title>
				<link>http://crazzy.se/blog/why-i-jumped-off-school</link>
				<description> I need to write a short essay on why I jumped off high school because everybody keeps asking why. It was partly because my school wasn't worth calling a school, and partly because I'm simply too stupid to handle that high level of an education.
First off, I didn't understand the math in junior high, which leads to having serious trouble with the math in highschool. And  I couldn't get the help I needed from my teacher because he simply didn't have time to help me that much. The other students also needs a bit of help, and the teachers time is better spent on those who aren't too dumb.

So no math, and all subjects relying on the math is totally out of question. I can't handle the math, so I can't pass the physics and electronics classes.
But there's other subjects too, like the computer science related ones. In the end of the first year we had to choose what kind of education we wanted. Networking or programming. Sawier chose networking, I chose programming. I got subjects like; flash, publishing, c++, java and databases. The publishing course appearantly assumed that you had some knowledge of Adobe Photoshop, Adobe Illustrator and Adobe InDesign. I have touched the applications a few times, but they're just too damn advanced for me. And I never really got the flash course because of a retarded teacher that didn't understand what I wanted help with. Also I'm more of a coder than graphics guy.
The programming part didn't go that well either, I didn't even start the java course because school thought it was funny to place the lessons at the same day and same time(!) as the flash lessons. How should I be able to take both courses then? Also I didn't get to know that the java course had started until it was halfway done already. C++ was an easy thing since I already knew the language before I even started my first year. And the others were still trying to learn functions(!) after 1,5 year of studying the language, so I skipped most of those classes, and those I went to I didn't actually work with c++.
&quot;Database management&quot;, could be fun if it weren't that the teacher is a goddamn Microsoft-fanboy, he thinks he's cool with his Microsoft keystrip and also looks kinda faggy. First off, all the students before us had used MySQL, which I wanted to improve my skills in. Now with this teacher, we were forced to use MSSQL. I could have forgiven him for that if it we'rent that we were forced to use ASP.NET too. I showed him that I could use PHP and still connect to the MSSQL database server. So much for that subject.


So after a series of arguments and incidents and lack of respect for good quality education from my school. I jumped off.
It has the disadvantage of me loosing my &quot;student money&quot; and orphan's pension. That's approximately 5000 SEK less per month.
So now I live totally on the money I've inherited from my mother, which wont last forever.


What makes me even more angry is that sawier got a really good education, not that I don't want him to, he deserves that. But why not me too? We we're in the same fucking school. He gets to learn real, useful stuff, stuff that matters. I hate to blame others for how my life is, but my school certainly fucked it up real bad. Thanks alot, NTI Gymnasiet.
</description>
				<guid>http://crazzy.se/blog/why-i-jumped-off-school</guid>
				<pubDate>Thu, 14 Jan 2010 22:19:43</pubDate></item>
			<item>
				<title>The search for a job</title>
				<link>http://crazzy.se/blog/the-search-for-a-job</link>
				<description>
Today I decided to start search for a job for real. I thought it would be easy since we have this public service, &quot;Arbetsförmedlingen&quot;, here in Sweden. I thought they were going to help me with signing up as job-searcher. They didn't. They just pointed at a computer with a form loaded up in the browser. &quot;Fill in that&quot;. There were alot of quite difficult things in that.


First, &quot;Choose what job title's you're looking for&quot;. As if that would be easy? Thousands of choices out of which I could only pick four. Long title's that didn't describe at all what kind of job it would be. And my profile would probably match a lot more than four title's. And when I'm talking about &quot;my profile&quot;, I could only pick 18 areas in which I had knowledge. Let's say if I were to pick Linux, I had to pick it four times, one for each job title I was looking for. Which then counted as four points. So I couldn't even choose one third of what I actually know. How can such an important department have such wortless piece of junk systems? And also, it didn't let me save my information because of the last step. I had to choose an education. I don't have any! I jumped off highschool because I couldn't stand it. (Probably going to write a big essay on that too.)


So I'm back at square one, can't register as job-searcher because of sucky systems. And I can't get an education because I just can't afford it. I know the education itself is free and all, but I need to get a job this year or I'll be in serious economic trouble. Now I can understand why so much young people takes their lives. Life is not fun at all, it's just a very painful hell.

</description>
				<guid>http://crazzy.se/blog/the-search-for-a-job</guid>
				<pubDate>Thu, 14 Jan 2010 21:54:50</pubDate></item>
			<item>
				<title>Improved two sites</title>
				<link>http://crazzy.se/blog/improved-two-sites</link>
				<description>
I've improved kompilator.se and paste.crazzy.se. If you're browsing a piece of C or C++ code on the pastebin you can have it compiled with one single click. If there's any errors you'll get the gcc output so you know what went wrong with your code.


And the compiler have gotten an extensive info page about the build environment, it will get it's manpage browser. I'm just thinking about how I want that part to work. Also whenever you upload some code for compilation it'll get pasted at the pastebin. (Unless you clicked a compile button on the pastebin itself.)


As a side thingy I've created a little mini-site, ereonsdag.nu. Unfortunatly it's swedish-only. It's meant to help dumb people remember when it's wednesday aka get-out-and-drink-in-the-middle-of-the-week-day. Also it has this nice little feature of via geoip figuring out where in sweden you are and spit out the nightclubs in your area with direct links to a more extensive description of the particular nightclub on nattklubben.se.
</description>
				<guid>http://crazzy.se/blog/improved-two-sites</guid>
				<pubDate>Tue, 12 Jan 2010 03:19:23</pubDate></item>
			<item>
				<title>Site update upcoming</title>
				<link>http://crazzy.se/blog/site-update-upcoming</link>
				<description>
CrAZzY.se will get an update quite soon. I've thought about fixing a few bugs, putting up a gallery for the photos I take with my Nikon D90 and also making the boxes images clickable. The last thingy should launch a lightbox-like mini image-gallery with pics of that particular box.


On a side note I'm thinking about putting up BNC services. Just need to get myself alot more ip addresses for that. :(
</description>
				<guid>http://crazzy.se/blog/site-update-upcoming</guid>
				<pubDate>Sat, 09 Jan 2010 18:48:50</pubDate></item>
			<item>
				<title>Fixed online compiler</title>
				<link>http://crazzy.se/blog/fixed-online-compiler</link>
				<description>
I've never noticed that my online compiler threw a fatal error about undefined function. A small typo. That's fixed now, and I've added analytics to it so I can see if someone actually uses it. :P


Next up for that site is installing a huge amount of libs, doing some more extensive testing, and probably just for the fun add a man page browser. And a link collection for good C/C++ tutorials and other good reads.
</description>
				<guid>http://crazzy.se/blog/fixed-online-compiler</guid>
				<pubDate>Sat, 09 Jan 2010 18:40:14</pubDate></item>
			<item>
				<title>Solving intel lag in Debian</title>
				<link>http://crazzy.se/blog/solving-intel-lag-in-debian</link>
				<description>I had this laptop which I really had no good use of, so I thought of setting up some kind of basic work environment on it. It's a Lenovo(*sigh*) R61. Intel Core2Duo CPU, 2GB RAM, 320GB HDD, and unfortunately an Intel GFX chip. My OS of choice was Debian Sid. (Because Lenny has ancient packages) I turned off compositing because really nothing looked like it should and everything was lagging extremely much. Things started looking alright, but my VM was still lagging.

So after a few hours of research and trying different things, I have a simple solution for you. I haven't tested it out with compositing yet, but normal operations work without lag. First of all, upgrade your kernel, you need at least 2.6.28. I used 2.6.32-trunk-686 from the repo. After that I downloaded, the driver and a newer libdrm than the repo could give me.

You'll get complaints about a few packages needed when running the configure for the driver, just fix that with APT. The only dependencies that you need to get elsewhere is the libdrm. (&amp;gt;=2.4.16 needed) Edit your xorg.conf, driver should be set to &quot;intel&quot;, and &quot;VideoRam 262144&quot; should be added. Both of course in the Device section. You can change the VideoRam to whatever you think will be good for you, but remember that integrated chips steal RAM. So keep it reasonable. Hopefully someone will have use for this. :)</description>
				<guid>http://crazzy.se/blog/solving-intel-lag-in-debian</guid>
				<pubDate>Thu, 24 Dec 2009 23:10:29</pubDate></item>
			<item>
				<title>DNS Administration interface</title>
				<link>http://crazzy.se/blog/dns-administration-interface</link>
				<description>I've created an administration interface for domains hosted on my nameservers. So the few of you that have domains that my nameservers resolve, contact me for login information. You'll be able to add and remove domains, and edit the records just like on any other DNS host. But you'll need to point your domain on the nameservers yourself, more information is inside the administration interface under the docs section. (When I was already working on the DNS system I added another server too, a fourth.)</description>
				<guid>http://crazzy.se/blog/dns-administration-interface</guid>
				<pubDate>Mon, 14 Dec 2009 15:38:00</pubDate></item>
			<item>
				<title>Blocking DNS DOS attack</title>
				<link>http://crazzy.se/blog/blocking-dns-dos-attack</link>
				<description>I've noticed that I've been under a constant attack with over 200 queries per sec from a very large amount of ip adresses, all DNS queries we're for non-existent subdomains. So I'm just going to share 2 nice command lines that deals with the problem.

grep named /var/log/syslog | grep denied | grep cache | awk '{print $7}' | sort | uniq | cut -d \# -f 1 -s | sort | uniq &gt; spammers
for A in `cat spammers`; do iptables -I INPUT -s $A -j DROP; done


Execute those 2 lines if you have a problem with loads of denied queries for non-existent subdomains. In my case over 30k ip adresses got blocked. :) </description>
				<guid>http://crazzy.se/blog/blocking-dns-dos-attack</guid>
				<pubDate>Sat, 12 Dec 2009 15:50:44</pubDate></item>
			<item>
				<title>Npanel-project</title>
				<link>http://crazzy.se/blog/npanel-project</link>
				<description>
Back in the summer this year, d4de and I discussed a project that we called Npanel. It's a network management suite. Very much like what you see on train stations and airports and other pay-networks. The version we developed backed then had a backend first in BASH, then recoded in C, which was called from the PHP scripts with shell_exec(). The problem with this was that we needed setuid binaries, and also that we relied on the system a bit too much.

So a few days ago when I had really nothing to do I felt like coding some C. So I developed a new backend, using sockets. It listens on localhost, port 1337. I've only implemented a very basic command list, but it'll do. Next part is writing a PHP frontend for this new backend. The last frontend was a code hell. A many hundred lines big functions.php and I don't think even I can follow the code. (I wrote it) So this new frontend will be totally OOP and well-structured.
When I'm done with the new frontend version, I'll write some documentation and fix a nice design for the web interface. Then this project will be released open source, probably under GPLv3. Of course I'll pass the code through d4de, Xires and t0ne since they're better than me in C and PHP respectively. That way, they can spot eventual bugs or security holes. So bookmark my RSS feed for more updates on this project. :P</description>
				<guid>http://crazzy.se/blog/npanel-project</guid>
				<pubDate>Tue, 08 Dec 2009 19:54:38</pubDate></item>
			<item>
				<title>New site up</title>
				<link>http://crazzy.se/blog/new-site-up</link>
				<description>My new site is up, took a while to code but it's finally done. This time I bought a logo from Johan Forngren on Guppy Creative. He's got excellent skills in creating exactly what the client describes. It was like he had opened my mind and downloaded the logo straight from my head. I'm highly satisfied and recommend him to everybody who needs some graphics created but doesn't have the skills. Anyhow, what do you think of my new design?

I've also moved and rewritten some of the old data. Not the comments though, I couldn't be bothered to write all the id's manually. This new codebase is 10 times the awesomeness of wordpress. If I want new functionality it's just a matter of writing 1 file with the code for it. My code are much more modular. And most important, my code is 20 times more secure than wordpress.</description>
				<guid>http://crazzy.se/blog/new-site-up</guid>
				<pubDate>Thu, 03 Dec 2009 01:07:35</pubDate></item>
			<item>
				<title>Fedora</title>
				<link>http://crazzy.se/blog/fedora</link>
				<description>I thought I'd revisit Fedora today. It was very long since I used Fedora. Version 6 I think. Anyway, I downloaded the i386 install DVD, burned it out and booted my testing box with it. Did a media check and continued to launch anaconda. Well, I couldn't install Fedora since they have a bug in their partion editor causing anaconda to refuse to continue. Some shit just out of random, &quot;Unhandled Exception&quot;. The error appears both when creating a custom partition layout and when letting anaconda create one for you.

The machine in question is nothing spectacular. A simple AMD Sempron 3200+ with 1GB DDR2 800Mhz. The one and only harddrive is a standard WDC 160GB SATA2. So I don't really see why it shouldn't work. A funny side note is that Fedora sucks too much to own the &amp;lt;distro&amp;gt;.org domain. Take a look. :P</description>
				<guid>http://crazzy.se/blog/fedora</guid>
				<pubDate>Sun, 09 Aug 2009 01:00:39</pubDate></item>
			<item>
				<title>Sockstress</title>
				<link>http://crazzy.se/blog/sockstress</link>
				<description>Okay, this is a dangerous one. The main concept is to crash/freeze a remote machine without something lame like DDoSing with a huge botnet. This one requires almost nothing except than a Linux/BSD attacking host. The target could be any OS which have TCP implemented.

I've read up on it a bit here. After that I coded my own implementation. I then test-ran it against one of my own boxes running Debian. The target froze in under 2 seconds, totally ignoring any network traffic. The screen also lost the computer and asked if the cable was unplugged.

A reboot later and the machine worked fine locally. But not network-wise. I mean, ICMP works like a charm, I couldn't test UDP as the machine have no UDP network app installed that I'm aware of. And it totally refused any TCP communication. Other machines can send ICMP traffic to it and get replies, but not even ssh works anymore. It's totally fucked.

I'm not sure if I should release the code for this yet. I mean it could end up in tons of skiddie's just fucking up each other and the rest of the internet. This is a very harmful piece of software. I really hope Linus Torvalds and the other people working on the Linux kernel patches this very soon. It's just a matter of time before a working implementation is too widespread.

UPDATED: This vulnerability is now patched, if any of you guys want my code you know where to find it :P</description>
				<guid>http://crazzy.se/blog/sockstress</guid>
				<pubDate>Sat, 08 Aug 2009 01:09:36</pubDate></item>
			<item>
				<title>Creating an executable library</title>
				<link>http://crazzy.se/blog/creating-an-executable-library</link>
				<description>To fully understand this you'll have to understand how to create a library, and how they work. A good tut on that can be found here.

All programs have a default entry point which is where the execution of them begins. Your compiler suite does all this for you and you don't have to think about it. Librarys however have a default entry point of NULL, because they aren't meant to be executed. But try to run &quot;/lib/libc.so*&quot; on a random Linux box. That library is executable! I was amazed by this and wanted to learn how I could do this myself. It took me about 15 hours to find out how. So I'm writing this for anyone to read and learn from so you don't have to go trough that hassle yourselves. Oh and I did not do all the work myself, d4de have helped me alot in solving this.

Anyway, create a random C source file containing just a simple function. It has to return int, and it has to have a return statement. Other than that, just before the return statement you need to call exit(EXIT_SUCCESS); or your lib will exit with a SIGSEGV.


#include 
int func() {
    puts(&quot;This is the default entrypoint, aka func().\n&quot;);
    exit(EXIT_SUCCESS);
    return 0;
}


Now, to compile that into a working library with a default entry point to the symbol of your function, type: &quot;gcc -e func -g -fPIC -nostartfiles -o libfile.so sourcefile.c&quot;. Substitute &quot;func&quot; with your function of choice. And make sure you get the -nostartfiles because otherwise you'd get very strange errors of all kinds when trying to execute your lib. Well, that's it, I'll update this article later with a download.

UPDATED: Tarball with sourcecode and Makefile! :)
UPDATED2: The tarball has been lost somewhere in cyberspace, link removed. :(</description>
				<guid>http://crazzy.se/blog/creating-an-executable-library</guid>
				<pubDate>Sun, 21 Jun 2009 00:57:01</pubDate></item>
			<item>
				<title>How to become productive</title>
				<link>http://crazzy.se/blog/how-to-become-productive</link>
				<description>This is not a very magical list of things to become more productive. It's more of a list of common sense things that most people seem to overlook and don't think of. I've fallen into this pit myself, but I've found my way out and will now help you do that. This should be very obvious to anyone but still it's not. One of the most important things is to have a system and environment that you feel comfortable using. Having the right editor for you and a compiler you like. You'll also need to have some kind of reference material or manual readily available. And for when you can't find the answer on your own, you need to know where and how you can get help.

One thing that helps very much is to have some kind of &quot;mentor&quot; that knows whatever you're trying to learn very well and has gained alot of experience. This mentor should be a person you can reach at about any time with questions, but don't bother the mentor with questions you could have looked up in the manual. Another thing your mentor can help you with that's extremely valuable is to look at your sourcecode and tell you which practices you should stop with and what you could do better, different ways of encountering a task and which way is better than the others and why. That's something a newbie couldn't ever tell since that requires experience.

Other stuff that helps keeping your productivity up is how your environment around the computer looks. Is it clean and well organized? It means alot more than you may think. You'll be at better mood when it's nice around you and when you can find your stuff without searching for hours and becoming more and more frustrated each minute. That affects your productivity very negatively.

The last thing is for then you become frustrated and angry, do you have a way to calm yourself down? Take me for example, I can become very angry and frustrated, extremely easy. And when I do that, I just take a cigarette or a cold beer. That makes me calm down real fast. So in a way, smoking is good for me. It's good in another way too, although a little off topic. Cigarettes contain some kind of chemical that makes you less hungry, and I spend alot less on food since I started smoking. The cost of the cigarettes is less than what I save on the foods, so I actually save money by smoking. Plus it keeps me calm. So whatever is your way of keeping yourself calm, find out how.

I hope you start becoming more productive now, and share alot of nice and interesting source-code. :P</description>
				<guid>http://crazzy.se/blog/how-to-become-productive</guid>
				<pubDate>Sun, 24 May 2009 00:52:36</pubDate></item>
			<item>
				<title>Hackers</title>
				<link>http://crazzy.se/blog/hackers</link>
				<description>I've read alot of different viewpoints about what a hacker is, and how you should do to become one. And I thought I'd share my point of view on the topic. A hacker is not what media thinks it is. The people that breaks infrastructure, attacks random targets out of boredom and just destroy for others are NOT hackers. They're merely crackers. But most of those people doesn't have a real clue about what they're actually doing, they're just running exploits and &quot;hacking tools&quot; they've downloaded from the internet. Thus they are script kiddies, or short skiddies.

A real hacker has no malicious intents, he just wants to learn about systems. How they're built, how they work and what makes them run. He seeks knowledge, far beyond what any half-assed &quot;IT-expert&quot; have. A hacker may exploit a system or service and break the security around it. But only to learn how the security subsystem works and which shortcomings it has. A real hacker then examines how the security could be improved and sends his information to the responsible administrator so the insecurity can be fixed.

A hacker never sees problems, he sees solutions. If something is in the way, we find another path, around whatever was in our way. If something is malfunctioning, we fix it. A real hacker can make any system do anything he can imagine. If you can think of something you'd like a particular system do, make that happen. That's what a hacker does. I don't consider myself a real hacker yet, but I'm on my way. I still need to learn alot of things, and I'm still waiting for a hacker to call me hacker. Until then I can't consider myself a hacker. It's not something you just become, it's something you deserve to be called.

And don't ask me how to become a hacker, that's something you should have figured out by now. But I warn you, if you just want to break shit and behave like a new-born baby, I'll guarantee you that you will not be treated very well by hackers.</description>
				<guid>http://crazzy.se/blog/hackers</guid>
				<pubDate>Sun, 24 May 2009 00:50:30</pubDate></item>
			<item>
				<title>Two irc-tricks</title>
				<link>http://crazzy.se/blog/two-irc-tricks</link>
				<description>I've found out two pretty sweet things you can do with your irc client. One of them which I'm not sure whether it works in other clients than xchat. (Since it rocks and everything else sucks I only use xchat.) The first one is how you hide your ctcp info, especially the CTCP VERSION. Just type '/ignore *!*@* CTCP', it even works in windows! And you don't need to fiddle with cryptic ctcp settings in your client's preferences.

The other trick I'm going to share is how to run two irc commands in one line. It's very simple, you just have to create a newline character. With xchat(maybe other clients too) you do this by holding in Ctrl+Shift and typing u and a in that order. It will appear as a little box with binary numbers in it. So it will appear something like this: '/say hi$$/say lol' where $$ is the little box. Have fun on the irc now and show everybody you're leet. :P</description>
				<guid>http://crazzy.se/blog/two-irc-tricks</guid>
				<pubDate>Mon, 18 May 2009 00:48:27</pubDate></item>
			<item>
				<title>Doing something creative</title>
				<link>http://crazzy.se/blog/doing-something-creative</link>
				<description>I've had some fun today with an old prototype of Sony Ericsson F500, a Logitech Communicate STX and a USB cable. I won't explain everything here I'll just link to my posts on Underground Systems. The first thing I did was making a security camera. A webcam which sends me an sms on movement. And when that was done I thought of making a script which checks if my internet connection is down and smses me. Read more @ US. I can't be bothered to write it here too. :P</description>
				<guid>http://crazzy.se/blog/doing-something-creative</guid>
				<pubDate>Sat, 09 May 2009 19:40:59</pubDate></item>
			<item>
				<title>Gentoo Linux</title>
				<link>http://crazzy.se/blog/gentoo-linux</link>
				<description>I decided to explore a new distribution, and Gentoo looked quite nice so I reinstalled my laptop with it. It took a while to get the hang of the USE flags. (Like compiling gimp without jpeg support) But I've managed to get through that and get almost all hardware to work. The only thing that doesn't work is the front ports for audio. But how often will I actually use them? Never.

Other than that I'm running XFCE4 with real transparency enabled, only thing is that the standard terminal in XFCE sucks and doesn't support real transparency. So I need another terminal app. For the wifi I have the wavelan panel applet and a nice script called wlassist. Next step is enabling hibernation with the tuxonice kernel. Just need to figure out all damn modules I need. I'll probably dump Debian for Gentoo on my main box too. One thing I really like about Gentoo's package management is that I can run multiple instances of it. I don't have to wait on it to finish, I just open up another terminal and emerge what I want. Go Gentoo! :)</description>
				<guid>http://crazzy.se/blog/gentoo-linux</guid>
				<pubDate>Fri, 03 Apr 2009 19:29:53</pubDate></item>
	</channel>
</rss>