There’s a little bug in the current version of the website…

I keep seeing NullPointer errors in the server logs, and I found out the reason. When someone creates a list of files, it gets an URL starting with /l/. In the background this ID refers to an array of file IDs, but when one of those files expires the server won’t be able to deliver the list and breaks. When it does that it shows a “Whitelabel error page” to the user, that’s simply because I didn’t have time to add a real error page (fixed in the next version) :).

Now the question is: How did those files expire while they were still being used? Well, because of a little error I made: When a user views a file list page, it doesn’t actually count as a view for the files and so the server thought the files weren’t being used anymore and deleted them.

I have fixed this in the next version of pixeldrain, but I don’t know when I’ll be able to publish it. It’s a big update and I have very little time to work on it (less than two hours a day). Also, because there are so many changes to the database the website will also have to go offline for a few hours, and I need to schedule that.

Hope it doesn’t bother anyone too much, sorry for the inconvenience.

There’s a little bug in the current version of the website…

Update 2015-08-24: http://pixeldrain.com is now also an official PixelDrain domain name! Also, support for bigger files is coming

This makes it easier to find the website on search engines. Uploaded files will still automatically get the shorter pixeldra.in domain name though.

I’m currently working on the file size limit. I think it might be better to set a daily limit per IP address, and no limit for single files. I had in mind to set the daily limit to 1 or 2 GB, if I were to set it to 2 GB that means that one individual file could be up to 2 GB in size! But once you’re finished uploading that mega file you won’t be able to upload anything for 24 hours. This also makes it possible to host big videos on pixeldrain, or game installers or whatever. Of course this also makes management of payment options easier too (more money = higher daily limit) but that’s all future talk, I haven’t even thought about how to implement payments yet.

Last weekend I went to LowLands Festival, and it was freaking amazing! Here’s a little video I made of the Chemical Brothers: http://pixeldrain.com/u/1nCEWZ (WARNING, it’s loud!), I had the time of my life! But that also meant I wasn’t able to update pixeldrain for a while, now I got to get back in that rhythm. Also school will be starting next week for me so that will also slow down development a bit (although I’m off every thursday, yay!).

Please tell me what you think in the comments!

Update 2015-08-24: http://pixeldrain.com is now also an official PixelDrain domain name! Also, support for bigger files is coming

Migration to new server software complete! The site is now powered completely by Java

It was quite nerve wrecking because not everything went as planned, but I managed to fix it all and all previously uploaded files should still be available.

I have actually been procrastinating this for a while as I knew it was going to be hard and stressful, but I’m glad I got it over with :D.

All files that were uploaded to the testing site (:8080) have been deleted (not entirely on purpose, but it was for testing anyway so no big loss).

New features!

There is now a page where you can view all files you have uploaded: http://pixeldra.in/history

A fully documented API, feel free to build applications around PixelDrain, it would be an honor. Also tell me when you need a feature that hasn’t been implemented yet. http://pixeldra.in/api

File lists can now be created from the Home page. All you need to do is upload some files and click the “Create List” button, enjoy!.

The UI on the viewer page can now be collapsed for a complete distraction free, full screen experience.

Lots of smaller improvements.

What’s next?

Improvements to list creation like sorting files.

Thumbnail generation, I’ve already thought this one out and it should not take too long. Thumbnails will be used to give a small (100*100px) preview of the files you have uploaded.

Improvements to the upload history browser: clearing history, sorting files, creating lists out of old files.

Migration to new server software complete! The site is now powered completely by Java

Update 2015-08-11: The new version is coming along nicely, file lists are almost complete

So the past weeks I’ve rewritten the entire website from PHP to Spring Boot. There are a few reasons behind this decision:

  1. I’m way better at Java than PHP, this means I can speed up development quite a lot by working in my favorite language. I initially made it in PHP because I wanted to get better at it, but it quickly grew into a big mess.
  2. Using Java gives me a lot more control over the system that the application is running on, like easier managing of the thousands of files this site is going to host.
  3. More control over the web protocols the site uses, easy configuration of HTTP headers or maybe Websocket connections.
  4. Creating a REST API using Spring Boot is about as easy as banging rocks together, I already have a fully functioning API, just need to write some docs for it.

Here is another preview of the possibilities using file lists on PixelDrain: http://pixeldra.in/u/TNfcUQ. I downloaded all episodes of my favorite podcast and dragged them into the PixelDrain home page and BAM, I had an autoplaying playlist to listen to while programming.

Also, as a tribute to PixelDrain being able to play WebM files, here’s something I made: http://pixeldra.in/u/j2tsIN

Update 2015-08-11: The new version is coming along nicely, file lists are almost complete