Go to the bottom, “Summing it up”, for the TL;DR.
The day I turn this website into a portfolio/CV-like thing will come sooner or later, and arguably that’s a better use for the domain gbl08ma.com than this blog with posts nobody cares about – except when I rant about new operating systems from Microsoft. But if you really care about such posts, do not worry: the blog will still exist, it just won’t be as prominent.
Meanwhile, and off-topic intro aside, the content usually seen on such presentation websites everyone-and-their-cat seems to have these days, will have to wait. In anticipation for that kind of stuff, let’s go in a kind of depressing journey through my eight years programming experience.
The beginning was what many people would consider a horror movie: programming in Visual Basic for Applications in Excel spreadsheets, or VBA for short. This is (or was, at the time; I have no idea how it is now) more or less a stripped down version of VB 6 that runs inside Microsoft Office and does not produce stand-alone executables. Everything lives inside Office documents.
It still exists – just press Alt+F11 in any Office window. Also, the designer has Windows 7 Basic window styles… on Windows 10, which supposedly ditched all that?
I was introduced to it by my father, who knows his way around Excel pretty well (much better than I will probably ever will, especially as I have little interest). My temporal memory is quite fuzzy and I don’t have file timestamps with me for checking, so I was either 9, 10 or 11 years old at the time, but I’m more inclined to think 9-10. I actually went quite far with it, developing a Excel-backed POS system with support for costumer- and operator-facing character LCD screens and, if I remember correctly, support for discounts and loyalty cards (or at least the beginnings of it).
Some of my favorite things I did with VBA, consisted in making it do things it was not really designed for, such as messing with random ActiveX controls and making it draw strange-looking windows (forms) and controls through convoluted Win32 API calls I’d have copied from some website. I did not have administrator rights to my computer at the time, so I couldn’t just install something better. And I doubt my Pentium III-powered computer, already ancient at the time (but which still works today), would keep up with a better IDE.
I shall try to read these backup CDs and DVDs one day, for a big trip down the memory lane.
Programming newb v2
When I was 11 or 12 I was given a new computer. Dual core Intel woo! This and 2GB RAM meant I could finally run virtual machines and so I was put on probation: I administered the virtual computers, and soon the real hardware followed (the fact that people were tired of answering Vista’s UAC prompts also helped, I think). My first encounter with Linux (and a bunch other more obscure OS I tried for fun) was around this time. (But it would take some years for me to stop using Windows primarily.)
Around this time, Microsoft released the Express (free) editions of VS 2008. I finally “upgraded” to VB.NET, woo! So many new things to learn! Much of my VBA code needed changes. VB.Net really is a better VB, and thank Microsoft for that, otherwise the VB trauma would be much worse and I would not be the programmer I am today. I learned much about the .NET framework and Visual Studio with VB.NET, knowledge that would be useful years later, as my more skilled self did more serious stuff in C#.
In VB.NET, I wrote many lines of mostly shoddy code. Much of that never saw the light of day, but there are some exceptions: multiple versions of Goona Browser made their way to the public. This was a dual-engine web browser with advanced UI, and futuristic concepts some major players copied, years later.
How things looked like, in good days (i.e. when it didn’t crash). Note the giant walls of broken English. I felt like “explain ALL the things”! And in case you noticed the watermark: yes, it was actually published to Softpedia.
If you search for it now, you can still find it, along with its website which I made mostly from scratch. All of this accompanied by my hilariously broken English, making the trip to the past worth its weight in laughs. Obviously I do not recommend installing the extremely buggy software, which, I found out recently, crashes on every launch but the first one.
Towards the later part of my VB.NET era, I also played a bit with C#. I had convinced myself I wanted to write an operating system, and at the time there was a project called COSMOS that allowed for writing (pretty limited) OS with C#… of course my “operating” systems were not much beyond a fancy command line prompt and help command. All of that is, too, stored in optical media, somewhere… and perhaps in the disk of said dual-core computer. I also studied and modified open source programs made in C# (such as the file downloader described in the Goona Browser screenshot) for my own amusement.
All this happened while I developed some static websites using Visual Web Developer Express as editor. You definitely don’t want to see those (mostly never published) websites, but they were detrimental to learning a fair bit of HTML and CSS. Before Web Developer I had also experimented with Dreamweaver 8 (yes, it was already old back then) and tried my hand at animation with Flash 8 (actually I had much more fun using it to disassemble existing SWFs).
At this point I was 13 or so, had my first contact with Linux more than done, through VMs and Live CDs, aaand it happened: Ubuntu became my main OS. Microsoft “jail” no more (if only I knew what a real jailed platform was at the time…). No more clunky .NET! I was fed up with the high RAM usage of Goona Browser, and bugs I was having a hard time debugging, due to the general code clumsiness.
How Ubuntu looked like when I first tried it. Good times. Canonical, what did you do?
For a couple of years, in terms of desktop development, I only made some Python scripts for my own amusement and played a very small bit with MonoDevelop every time I missed .NET. I also made a couple Lua scripts for Rockbox. I learned much about Linux usage and system maintenance as I used it more and more on my own computers and on my first Virtual Private Servers, which I got after much drama in the free web hosting communities. Ugh, how I hate CPanel.
It was around this time that g.ro.lt and n.irc.su appeared. g.ro.lt was a URL shortener that would later evolve into 4.l.to and later tny.im. n.irc.su was a social network built on Elgg, which obviously failed. I also made some smaller websites, like one that would take you to random image hosting websites, URL shorteners and pastebins, so you would not use the same service every time you urgently needed one. These represented my first experiences with PHP programming.
I have no pictures to show. The websites are long gone, not on the Internet Archive, and if I took screenshots, I have no idea where I put them. Ditto for the logos. I believe I still have the source code for the random-web-service website somewhere, at least the front page layout.
All this working on top of free stuff: free (and crappy) subdomains, free (and crappy) web hosting, free (and less crappy) virtual servers. It would take me some time until I finally convinced myself I needed to spend some money for better reliability, a gist of support and less community drama. And even then I would spend Bitcoin, which I earned back when it was really cheap, making the rounds of silly faucets and pulling money out of CPAlead-like offers through the use of multiple proxies (oh, the joy of having multiple VPS…). To this day I still don’t have a PayPal account.
This time, and when I actively developed tny.im (as opposed to just helping maintain it), was the peak of my gbl08ma-as-web-developer phase. As I entered and went through high school, I would get more and more away from HTML and friends (but not server maintenance), to embrace something completely different…
Low level, little resources: embedded systems
For high school math everyone had to use a graphing calculator. My math teacher recommended (out of any interest) Casio calculators because of their ease of use (and even excitedly mentioned, Casio leaflet in hand, the existence of a new and awesome color screen model that “did everything and some more”). And some days later I had said model in my hands, a Casio fx-CG 20, or Prizm, which had been released about a year before. The price difference from the earlier dot-matrix screen Casio calcs was too small to let the color screen go.
I was turning 15, or had just turned 15. I remember setting up the calculator and thinking, not much after, “I want to code for this thing”. Casio’s built-in Basic dialect is way too limited (and after having coded in “real” languages, Basic was silly). This was in September 2011; in March next year I would be releasing my first Prizm add-in, CGlock, a calculator PIN-locking software.
Minimalist look, yay! So much you don’t even notice it’s a color screen.
This was my first experience with C; I remember struggling with pointers, and getting lots of compilation warnings and errors, and run-time errors. Then at some point everything just “clicked in” and C soon became my main language. Alas, for developing native software for the Prizm, this is the only option (besides using C++ without most of its features, not even the “new” keyword).
The Prizm is a horrible platform, especially for newbie C programmers. You can’t use a debugger, nor look at memory contents, the OS malloc/free implementation has bugs (and the heap is incredibly small, compared to the stack) and there’s always that small chance some program damages your calculator, or at least corrupts your estimated files and notes. To this day, using valgrind and gdb on the desktop feels to me as science fiction made true. The use of alloca (stack allocation) ends up being preferred in relation to dynamic allocation, leading to awkward design decisions.
Example of all the information you can get about an error in a Prizm add-in. It’s up to you to go through your binary (and in some cases, disassemble the OS) to find out what these mean. Oh, the bug only manifests itself when compiling with optimizations and without symbols? Good luck…
There is a proprietary emulator, but it wasn’t designed for software development and can’t emulate certain things. At least it’s better than risking damage to expensive hardware. The SuperH-4 CPU runs at 58 MHz and add-ins have access to about 600 KiB of memory, which is definitely better than with classic z80-powered Texas Instruments calculators, but one still can’t afford memory- or CPU-intensive stuff. But what you gain in performance and screen resolution, you lose in control over the hardware and the OS, which still have lots of unknowns.
Programming for the Prizm taught me how it’s like to work without the help of the C standard libraries (or better, with the help of incomplete and buggy standard libraries), what a stack overflow looks like (when there’s no stack protection), how flash memories work, what DMA is, what MMUs do and how systems can be bricked when their only bootloader is not read-only. It taught me how compilers work from an end-user perspective, what kind of problems and advantages optimizations introduce, and what it’s like to develop parts of the C standard library.
It also taught me Casio support in Portugal (Ename) is pretty incompetent at fixing calculators, turning my CG 20 into a CG 10 and leaving two big capacitors out of a replacement main board. In this hardware topic, I learned quite a bit about digital logic from Prizm hardware discussions at Cemetech. And I had some contact with SH4 assembly and a glimpse into how to use IDA Pro. Thank you Casio for developing a system that works so well and yet is so broken in so many under-the-hood ways, and thank you Cemetech for briefly holding the Prizm higher than TI calcs.
I developed other add-ins, some from scratch and others as ports of existing PC software (such as Eigenmath). I still develop for the Prizm from time to time, but I have less and less motivation as the homebrew community has stagnated and I use my Prizm much less, as I went to university. Experience in obscure calculator platforms does not make for a nice CV.
Yes, in three years or so I went from the likes of Visual Studio to a platform where the only way to debug is to write text to the screen. I still like embedded and real-time programming a lot and have moved to programming more generic and well-known things such as the ESP8266.
Getting in the elevator
During the later part of high school (which I started in the fall of 2011 and ended in the summer of 2014), I did more serious Python stuff, namely Mersit, later deprecated in favor of Picored, which is not written in Python but in Go. Yes, I began trying higher-level stuff again (higher level, getting in the elevator… sorry, I’m bad at jokes).
My first contact with Go was when I was 17, because I wanted to develop something that ran without external dependencies (i.e., unlike Java or .NET) and compiled to native code. I wanted to avoid C/C++, but I wasn’t looking for “a better C” either, so Rust was not it. Seeing so much stuff about Go at Hacker News, one day I decided to try my hand at it and I like it quite a lot – I’m still unsure if I like it because of the language itself or because of the great libraries one can use with it, but I think both play an important role.
This summer I decided to give C# another chance and I’m quite impressed – turns out I like it much more than I thought. It may have something to do with trying it after learning proper languages vs. trying it when one only knows VB. I guess my VB.NET scars are healed. I also tried a bit of Java, in my first contact with it ever, and it seems my .NET hate converted into Android API hate.
Programming with grades
University gave the opportunity (or better, the obligation) of having other people criticize my code. The general public could already see the open-source C code of my Casio Prizm add-ins, and even the ugly code of Goona Browser, but this time my code was getting graded. It went better than I initially thought – I guess the years of experience programming in different languages helped, especially as many of the people I’m being compared with have only started programming this year.
In the first semester we took an introductory programming course, which used Python, and while it was quite easy for me, I took the opportunity to learn Python to a greater depth than “language in which to write quick and dirty glue code”. You see, until then I had not used classes in my Python code, for example. (This only goes to show Python is a versatile language, even if slow.)
We also took an introductory computer architecture course where we learned how basic CPUs work (it was good for gluing all the separate knowledge I already had about it) and programmed in assembly for a course-specifc CISC-like architecture. My previous experience with reading SH4 assembly proved quite useful (and it seems that nowadays the line between RISC and CISC is more blurred than ever).
In the second semester, I had the opportunity to exercise my C knowledge, this time not limited to the Prizm platform. More interestingly, logic programming, a paradigm I had no intention of ever programming in, was presented to us. So Prolog it was. It went much better than I anticipated, but as most other people who (are forced to) learn it, I have no real use for it. So the knowledge is there, waiting for The Right Problems(tm). I am afraid I’ll forget much of it before it becomes useful, but if there’s something picking C# up again taught me, is that I can pick up pretty fast skills learned and abandoned long ago.
The second year is about to begin and there’s some object-oriented programming coming, I hope I do well.
Summing it up
I do not like “years of experience” as a way to measure language proficiency, especially when such languages are learned for use in short-lived side projects, so here’s a list with an approximate number of lines of code I have written in each language.
- C: anywhere between 40K lines and 50K lines. Call it three years experience if you will. Most of these were for Prizm add-ins, and have since been rewritten or heavily optimized. This is changing as I develop less and less for the Prizm.
- PHP: over 15K lines, two years if you want to think that way. The biggest chunk of these were for developing the additions to YOURLS used in tny.im, but every other small project takes its own 200-500 lines of code. Unfortunately, most of this is “bad” code, far from idiomatic. The usual PHP mess, you know.
- Python: at least 5K lines over what amounts to about six months. Of these, most of the “clean” lines (25-35%) were for university projects.
- Go: around 7K lines, six months. Not exactly idiomatic code, but it’s clean and works well.
- VBA: uh, perhaps 3 or 4K lines, all bad code 🙂
- VB.NET: 10K lines or so, most of it shoddy code with lots of Try…Catch to “fix” the problems. Call it two years experience.
- C#: 10K lines of mostly clean and documented code. One month or so 🙂
- Lua: mostly small glue scripts for my own amusement, plus some more lines for use in games such as Minetest, I estimate 3-4 K lines of varying quality.
- Java: I just started, and mostly ported C# code… uh, one week and 1.5K lines?
- HTML, CSS and JS: my experience with JS doesn’t go much beyond what’s needed to modify DOM elements and make simple AJAX requests. I’ve made the frontend for over 5 websites, using the Bootstrap and INK frameworks.
- Prolog: a single university assignment, ~250 lines or one month. A++ impression, would repeat – I just don’t see what for.
In addition to all this, I have some experience launching the programs and services I make – designing logos/branding, versioning, keeping changelogs, update instructions, publishing, advertising, user support. Note that I didn’t say I’m good at any of these things, only that I have experience doing them, for better or worse…
Things I’d like to have more experience with:
- Continuous integration / testing in general;
- Debugging code outside of .NET/Visual Studio and printing debug lines in C;
- Using Git and other VCS in big repos/repos with more people (I want to see those merge conflicts and commits to the wrong branch coming);
- Server-side web development on something other than PHP and Go. And learning to use MVC frameworks, independently of the language;
- C++ (and Java, out of necessity. Damned Android);
- Game development. Actually, this is how many people start, but I’m so cool that I started by developing POS software 🙂
Some years ago, I followed a blog that listed songs used in advertisements, and where the author also included a small list of songs he liked, updated monthly. I liked much of the music that was shared there, and somehow it worked best for me than any recommendation engine. I found many of my favorite songs that way, and I was sad when the whole blog ceased to be maintained (due to things like Soundhound defeating its purpose, I guess).
In the hope that there may be someone out there with a taste for music mostly similar to mine and lucky enough to get to this website, starting May 2015 I’ll share in this page tracks that I’m adding to my library. Hopefully this will also answer the “what do you even listen to” question that pops up among friends from time to time. Some remarks:
- Genres: you’ll mostly find EDM and House music here, mixed with Synthpop, Alternative and Indie Rock, and other genres entirely.
- Some tracks are mainstream but others are relatively obscure. (And some are pure junk and others timeless pieces, I won’t say which are which)
- Due to the way I discover music, most will be at most one year old; older tracks may pop up every now and then.
Expect about 15 tracks per month – that’s how many the streaming service I use allows me to download per month. There are thousands of artists making their music available for free download, so it’s more like 10 per month plus whatever I happen to find in SoundCloud.
- I’m Portuguese and a small percentage of the music may be from Portuguese artists; however, I’ll only post music in English.
- This is not a music blog and thus I mostly won’t comment.
- No links to [your favorite streaming service]/YouTube/Artist site: it’s your responsibility to look and listen to them the way you want. Google is your friend (for this, at least).
- Songs are listed in alphabetical order, in the format [artist – including featured] – [title] – [album]. When I can not find an album where the track belongs at the time it is added to the collection, [album] is the title followed by [Single]. For remixes (indicated with [Remix]), any additional artists are included in the artist field (Google is your friend to help find out who is who). Sometimes a track is followed by a comment in italic.
- I tend to only pay attention to the melody and not the lyrics. I have no idea what many of these say. For some reason, though, I find music with vocals much easier to listen to.
- As time goes by, sometimes I begin to like certain tracks less (a sign they probably weren’t that good in the first place). USE AT YOUR OWN RISK. NO WARRANTY PROVIDED. Music I like is not limited to what is listed here; what is listed here includes, but is not limited to, music I currently like (it’s basically a list of tracks I just added to my library).
Oh, and one last thing: if you don’t have money/don’t want to pay for music, make sure to look around before pirating: many artists, especially the less known ones, offer free downloads for at least some of their tracks. Streaming services are also a thing.
July, August and September 2016
Note: I have no idea how I managed to legally get hold of so many tracks* in three months… I shouldn’t have procrastinated so much and instead tagged as I went. This took some hours to organize… * No, I did not spend 70+ euros to get 71 tracks. But if every user of a certain streaming service used up their monthly download allowance as much as I do, that service would have gone bankrupt already – on second thought, since it’s backed by a major ISP… can these things even go bankrupt? I don’t even know anymore…
Afrojack feat. Ty Dolla $ign – Gone – Gone [Single]
Ariana Grande and Renko – Into You [Remix] – Into You [Remix]
Armin van Buuren feat. BullySongs – Freefall – Embrace
A-Trak feat. Phantogram – Parallel Lines – Parallel Lines [Single]
Audien feat. Deb’s Daughter – Crazy Love – Crazy Love [Single]
Audien feat. Lady Antebellum – Something Better – Daydreams
Audien feat. Voyageur – Pharaohs – Daydreams
Bastille – Good Grief – Wild World
Bastille – The Currents – Wild World
Benny Benassi & Chris Brown – Paradise – Danceaholic
Benny Benassi feat. BullySongs – Universe – Danceaholic
Benny Benassi & Vassy – Even If – Danceaholic
Bob Sinclar – Someone Who Needs Me – Someone Who Needs Me [Single]
Cavaro and Nurko feat. Faheem – Lost In You [Remix] – Lost In You [Remix]
Chris Viviano feat. AWR – Holding You Back – Holding You Back [Single]
Coldplay – Hymn For The Weekend [Remix] – A Head Full of Dreams
Digital Farm Animals & Cash Cash feat. Nelly – Millionaire – Blood, Sweat & 3 Years
Disciples and David Guetta – No Worries – No Worries [Single]
DJ Cassidy feat. Chromeo – Future Is Mine – Future Is Mine [Single]
DJ Snake feat. George Maple – Talk – Encore
Empire Of The Sun – High And Low – Two Vines
Gareth Emery and Nicolas Haelg feat. Lawson – Make It Happen [Remix] – Make It Happen [Remix]
Giraff – Drinks – Drinks [Single]
Girl Friend and Louis La Roche – Tragic on the Dancefloor [Remix] – Tragic on the Dancefloor [Remix]
Imani Williams feat. Sigala & Blonde – Don’t Need No Money – Don’t Need No Money [Single]
Jacob Tillberg – Last Kiss – Last Kiss [Single]
Jess Glynne – Don’t Be So Hard on Yourself – I Cry When I Laugh
John Dahlbäck feat. Urban Cone & Lucas Nord – We Were Gods – We Were Gods [Single]
Johnny Graves and Tuero – Say Yes [Remix] – Say Yes [Remix]
Jonas Blue feat. JP Cooper – Perfect Strangers – Perfect Strangers [Single]
Justin Timberlake – Can’t Stop the Feeling! – Trolls- Original Motion Picture Soundtrack
Kav Verhouzer & Ben Alessi – Gonna Be Alright – Gonna Be Alright [Single]
Kav Verhouzer feat. BullySongs – Get What You Came For – The Bearded Man – Beards On The Beach (Rio de Janeiro)
Keaton Vegades – Hideaway – Hideaway [Single]
Kid Runner and Koastal – Different Kind Of Love [Remix] – Different Kind Of Love [Remix]
Koni & Tiger Mountain – Try Again – Try Again [Single]
Kyfra – Bandit – Bandit [Single]
Laidback Luke feat. Trevor Guthrie – Let It Go – Focus
Ludomir feat. Oferle – Last For The Summer [Single] – Last For The Summer [Single]
Madeon – The City – Adventure
Manse and Hibell feat. Alice Berg – Freeze Time [Remix] – Freeze Time [Remix]
Mastiksoul – Good for You – Good for You [Single]
MAX and Sokko feat. Tyler Carter – Basement Party [Remix] – Basement Party [Remix]
MAX and Two Friends – Lights Down Low [Remix] – Lights Down Low [Remix]
Max Elto and Mako – Shadow of The Sun [Remix] – Taped Rai
Oliver Heldens – Melody – Melody [Single]
OneRepublic – Future Looks Good – Oh My My
Otto Knows feat. Avicii – Back Where I Belong – Back Where I Belong [Single]
Papa Ya feat. Con Bro Chill – Outta Here – Outta Here [Single]
Papa Ya – Fine Livin’ – Fine Livin’ [Single]
Philipp Klade – Seasons – Seasons [Single]
Pierce Fulton feat. JHart – Landmines – Landmines [Single]
Poolside – And The Sea – And The Sea
Portugal. The Man – Modern Jesus – Evil Friends
Pretty Pink feat. Mick Fousé – Your Love – Your Love [Single]
R3hab and Sam Feldt feat. Quintino – Freak [Remix] – Freak [Remix]
R3hab – Freak – Freak [Single]
Roosevelt – Fever – Fever [Single]
Röyksopp and Robyn – Do It Again – Do It Again
Sick Individuals feat. jACQ – Take It On – Take It On [Single]
Sigala – Easy Love – Easy Love [Single]
Sigala feat. John Newman & Nile Rodgers – Give Me Your Love – Give Me Your Love [Single]
Smallpools and The Chainsmokers – Dreaming [Remix] – Dreaming Remix EP
Snakehips feat. Zayn – Cruel – Cruel [Single]
Syn Cole feat. Madame Buttons – The Daze – The Daze [Single]
The Chainsmokers and SJUR x Saxity feat. Strøm – Closer [Remix] – Closer [Remix]
Tiësto feat. John Legend – Summer Nights – Summer Nights [Single]
Timeflies – Once In A While – Once In A While [Single]
Tobtok – Aber – Aber [Single]
Young Foes – Broken Heart – Broken Heart [Single]
Zayn and Saxity feat. Anna Grillmeier – Pillowtalk [Remix] – Pillowtalk [Remix]
April, May and June 2016
Alesso feat. Nico & Vinz – I Wanna Know – I Wanna Know [Single]
American Authors – I’m Born To Run – What We Live For
Armin van Buuren feat. Eric Vloeimans – Strong Ones – Embrace
Armin van Buuren feat. Kensington – Heading Up High – Embrace
Axwell -\ Ingrosso – Dream Bigger – Dream Bigger [Single]
Axwell -\ Ingrosso – Thinking About You – Thinking About You [Single]
Daft Punk and k_d – Doin It Right [Remix] – Doin It Right [Remix]
Disco Fries feat. Hope Murphy – Born Ready – Born Ready [Single]
Fedde Le Grand – Keep On Believing – Something Real
Gorgon City – Doubts – Kingdom
Illenium feat. Liam O’Donnell – It’s All On U – Ashes // the whole album is pretty good, and a free download
k_d feat. Lolaby – Somewhere Far Away From Here – Somewhere Far Away From Here [Single]
Klingande feat. Daylight – Losing U – Losing U [Single]
Kygo feat. Kodaline – Raging – Cloud Nine
Kygo feat. Tom Odell – Fiction – Cloud Nine
Lauren Aquilina and Arty – Ocean [Remix] – Ocean
Like Kids – Wylen x BR!K
Lush & Simon feat. KiFi & BullySongs – Warriors – Warriors [Single]
Mako – Into The Sunset – Into The Sunset [Single]
Martin Garrix feat. John & Michel – Now That I’ve Found You – Now That I’ve Found You [Single]
Mike Posner and Seeb – I Took A Pill In Ibiza [Remix] – At Night, Alone.
OneRepublic – Wherever I Go – Wherever I Go [Single]
Panic Is Perfect – I Can Make It Good – Cellspace
R3hab & Trevor Guthrie – Soundwave – Soundwave [Single]
Sandovall and Sokko – Unwind [Remix] – Unwind [Remix]
Seeb feat. Neev – Breathe – Breathe [Single]
Sick Individuals feat. Kaelyn Behr – Never Fade – Never Fade [Single]
Sigma feat. Take That – Cry – Cry [Single]
Sigma – Nightingale – Nightingale [Single]
Steve Aoki and Felix Jaehn feat. Adam Lambert – Can’t Go Home – Can’t Go Home [Single]
Syn Cole – Feel Good – Feel Good [Single]
The 1975 – The Sound – I like it when you sleep, for you are so beautiful yet so unaware of it
The Aston Shuffle feat. Lila Gold – Restart – Photographs
Tiësto and Oliver Heldens feat. Natalie La Rose – The Right Song – The Right Song [Single]
Tobu & William Ekh feat. Brenton Mattheus – Let It Be Now – Sugar
Wilkinson feat. Shannon Saunders – Breathe – Breathe [Single]
Wintergatan – Marble Machine – Marble Machine [Single]
Wylen and BR!K – Like Kids – Like Kids [Single]
February and March 2016
Alan Walker – Faded – Faded [Single]
A-Trak feat. Jamie Lidell – We All Fall Down – We All Fall Down [Single]
Axlance & Luka Krajina and MI77ER – Dreams [Remix] – Dreams [Remix]
Big Black Delta feat. Debbie Gibson – RCVR – RCVR [Single]
Bryce Fox and Louis Vivet – Burn Fast [Remix] – Burn Fast [Remix]
Cheat Codes – Say Goodbye – Say Goodbye [Single]
Dennis Kruissen & Mazeville – Ain’t No Mountain – Ain’t No Mountain [Single]
Didrik Thulin feat. Sonny Alven – Fading – Fading [Single]
Different Heaven – Far Away – Far Away [Single]
Dillon Francis & Kygo feat. James Hersey – Coming Over – This Mixtape Is Fire
Fingertips – Out of Control – Out of Control [Single]
Hardwell and Flexical feat. Jake Reese – Mad World [Remix] – Mad World [Remix]
Hellberg – Better – Better [Single]
Hellberg feat. Aaron Richards – Synchronize – Synchronize [Single]
Jacob Tillberg – Ghosts – Ghosts [Single]
Kiiara and Felix Cartal – Feels [Remix] – Feels [Remix]
Lauv and Milk N Cooks – Reforget [Remix] – Reforget [Remix]
Louis Vivet feat. Gavrielle – Best Thing – Best Thing [Single]
Lush & Simon – The Universe – The Universe [Single]
Matt Simons and Sir Felix – Catch & Release [Remix] – Catch & Release [Remix]
Monarchy – The Beautiful Ones – Almost Human
Oliver Heldens & Shaun Frank feat. Delaney Jane – Shades Of Grey – Shades Of Grey [Single]
Panama Wedding and Bee’s Knees – Infinite High [Remix] – Infinite High [Remix]
Pat Nathan – Different – Different [Single]
Shaun Frank & KSHMR and Two Friends feat. Delaney Jane – Heaven [Remix] – Heaven [Remix]
Snakehips and Hibell – All My Friends [Remix] – All My Friends [Remix]
SNBRN and Cavego feat. Andrew Watt – Beat the Sunrise [Remix] – Beat the Sunrise [Remix]
SNBRN and Halogen feat. Andrew Watt – Beat The Sunrise [Remix] – Beat The Sunrise [Remix]
Summer Was Fun feat. Colordrive – Watching – Watching [Single]
Summer Was Fun feat. Meron Ryan – Run To You – Run To You [Single]
Summer Was Fun – Pick Up The Phone – Pick Up The Phone [Single]
The Mowgli’s – I’m Good – Kids In Love
Two Friends feat. Ktpearl – Forever – Forever [Single]
Volt & State and Jason Poulin – Sandcastles [Remix] – Sandcastles [Remix]
Willfree – Addicted To Love – Addicted To Love [Single]
Years and Years and Oliver Dürr – Shine [Remix] – Shine [Remix]
Zara Larsson – Lush Life – Lush Life [Single]
Zedd feat. Aloe Blacc – Candyman – Candyman [Single]
November and December 2015, January 2016
Alex Adair – Heaven – Heaven [Single]
Arty feat. Conrad Sewell – Braver Love – Glorious
Couzare and Wolfskind feat. Cozy – Just [Remix] – Just [Remix]
DNCE – Cake By The Ocean – SWAAY
Eurythmics and Deepdink – Sweet Dreams [Remix] – Sweet Dreams [Remix]
Felix Cartal feat. Nikki Yanofsky – Something To Live For – Something To Live For [Single]
Hurts – Some Kind of Heaven – Surrender
Klauss and Turino, Jakko and Silent Curse feat. Paul Aiden – Sail Your Heart [Remix] – Sail Your Heart [Remix]
Kygo and Aventry feat. Maty Noyes – Stay [Remix] – Stay [Remix]
MI77ER – Stardust – Stardust [Single]
Naughty Boy feat. Beyoncé and Arrow Benjamin – Runnin’ (Lose It All) – Runnin’ (Lose It All) [Single]
Nicolas Haelg – Mind Games – Mind Games [Single]
Project 46 feat. Shantee – Signs – Signs [Single]
Said The Sky feat. Diamond Eyes – Mountains – Mountains [Single]
Saxity feat. Teff and Komi – Who We Are – Who We Are [Single]
Sigma and Rita Ora – Coming Home – Life
Silent Curse – Night Sky – Night Sky [Single]
SNBRN feat. Andrew Watt – Beat the Sunrise – Beat the Sunrise [Single]
Take That – Hey Boy – III
The Kooks – Creatures Of Habit – Creatures Of Habit [Single]
Timeflies and Dave Edwards – Worse Things Than Love – Worse Things Than Love [Remix]
Tough Love feat. Nastaly – What You Need Is Me – What You Need Is Me [Single]
September and October 2015
Avicii – For A Better Day – Stories
Calvin Harris & Disciples – How Deep Is Your Love – How Deep Is Your Love [Single]
Cheat Codes and Boehm – Visions – Visions [Remix]
Chvrches – Never Ending Circles – Every Open Eye
Deniz Koyu – To The Sun – To The Sun [Single]
Deorro feat. Erin McCarley – I Can Be Somebody – I Can Be Somebody [Single]
Duke Dumont – Ocean Drive – Blasé Boys Club Part 1
Elephante feat. Trouze & Damon Sharpe – Age of Innocence – Age of Innocence [Single]
Ella Eyre – Good Times – Feline
Fedde Le Grand feat. Denny White – Cinematic – Cinematic [Single]
Foxes – Better Love – All I Need
Foxes – Feet Don’t Fail Me Now – All I Need
Galavant – Tonight – Tonight [Single]
Gibbz and Halogen – I Found You [Remix] – I Found You [Remix]
Gorgon City (feat. Romans) – Saving My Life – Saving My Life [Single]
Hailee Steinfeld – Love Myself – Love Myself [Single]
Hurts – Lights – Surrender
Hurts – Nothing Will Be Bigger Than Us – Surrender
John Newman feat. Charlie Wilson – Tiring Game – Revolve
Karetus feat. Agir – Castles In The Sand – Piñata
Kove feat. Moko – Hurts – Hurts [Single]
Kygo feat. Ella Henderson – Here for You – Here for You [Single]
Love Thy Brother feat. Jason Gaffner – Higher Love [Steve Winwood Cover] – Higher Love [Cover]
Martin Garrix vs Matisse & Sadko – Break Through The Silence – Break Through The Silence EP
Matthew Koma – So F++kin’ Romantic – So F++kin’ Romantic [Single]
MOKS feat. James Arthur – Otherwise – Otherwise [Single]
Owl City and Halogen feat. Aloe Blacc – The Verge [Remix] – The Verge [Remix]
Sam Feldt feat. Kimberly Anne – Show Me Love – Show Me Love [Single]
Tiko’s Groove feat. Gosha – I Don’t Know What to Do – I Don’t Know What to Do [Single]
Together feat. David Spekter – Together – Together [Single]
Vicetone feat. Kat Nestel – Nothing Stopping Me – Nothing Stopping Me [Single]
Zedd feat. Jon Bellion – Beautiful Now – True Colors
July and August 2015
Alex Adair – Make Me Feel Better – Make Me Feel Better [Single]
Armin Van Buuren feat. Mr Probz – Another You – Another You [Single]
Atlas Genius – Molecules – Inanimate Objects
Cartoon feat. Daniel Levi – On & On – On & On [Single]
Cash Cash – Surrender – Surrender [Single]
Cazzette feat. Newtimers – Together – Desserts
Cedric Gervais feat. Ali Tamposi – Love Again – Love Again [Single]
Crystal Fighters – Love Alight – Love Alight [Single]
Culture Code feat. Michael Zhonga – Electricity – Electricity [Single]
Deluka and Elephante – Home [Remix] – Home [Remix]
Dragonette – Let the Night Fall – Let the Night Fall [Single]
Dropout – Slowly – Slowly [Single]
Galantis – Forever Tonight – Pharmacy
Giorgio Moroder – 4 U with Love – Déjà vu
Giorgio Moroder feat. Foxes – Wildstar – Déjà vu
Goldroom feat. George Maple – Embrace – It’s Like You Never Went Away
Itro & Kontinuum – Alive – Alive [Single]
Jason Derulo – Want to Want Me – Everything Is 4
John Newman – Come And Get It – Revolve
John Newman – Lights Down – Revolve
Kaskade feat. Ilsey – Disarm You – Automatic
Kid Noize – Jackass – Jackass [Single]
Klingande feat. Broken Back – Riva (Restart the Game) – Riva [Single]
Louis Vivet feat. Jordan Humphrey – Silvia – Silvia [Single]
Lucas Nord – Voices – After You
Madcon feat. Ray Dalton – Don’t Worry – Don’t Worry [Single]
Mako – Smoke Filled Room – Smoke Filled Room [Single]
Misterwives and Halogen – Hurricane [Remix] – Hurricane [Remix]
Morgan Page feat. Lissie – Open Heart – Open Heart [Single]
Moullinex – Take A Chance – Elsewhere
Robin Schulz feat. Francesco Yates – Sugar – Sugar
Sigma feat. Ella Henderson – Glitterball – Life
The Knocks feat. Powers – Classic – So Classic
The Weeknd – Can’t Feel My Face – Beauty Behind the Madness
Tom Enzy feat. Kyle Stibbs – Time Doesn’t Wait – Time Doesn’t Wait [Single]
Urban Cone – Rocketman – Polaroid Memories
William Ekh feat. Alexa Lusader – Adventures – NCS Infinity
Years & Years – Shine – Communion
Young Empires – Sunshine – The Gates
Young Empires – The Gates – The Gates
Alesso feat. Sirena – Sweet Escape – Forever
Alesso – If It Wasn’t For You – Forever
Avicii feat. Audra Mae – Feeling Good – Stories
Cheat Codes – Adrenaline – Adrenaline [Single] // apparently unreleased song (is this even theirs?) Shazam and friends are of no help. My version is 3m 50s long. My methods are legal on most jurisdictions and will not be revealed.
Cheat Codes & Evan Gartner – Adventure – Adventure [Single]
Cheat Codes feat. Lostboycrow – Senses – Senses [Single]
Cheat Codes – Visions – Visions [Single]
Clean Bandit – Stronger – New Eyes
Disco Fries & Breathe Carolina – All I Wanna – Autonomous
Ella Eyre – Together – Feline
Felicity & Aventry feat. Johnning – Hello Goodbye – Hello Goodbye [Single]
Frenship – Kids – Frenship [Single]
Galantis – Peanut Butter Jelly – Pharmacy
Giorgio Moroder feat. Mikky Ekko – Don’t Let Go – Déjà Vu
Hilary Duff – Sparks – Breathe In. Breathe Out.
Jess Glynne – Hold My Hand – I Cry When I Laugh
Little Giants – Lately (Love, Love, Love) – Lately (Love, Love, Love) [Single]
Otto Knows – Next to Me – Next to Me [Single]
Owl City feat. Aloe Blacc – Verge – Mobile Orchestra
Parade of Lights – Feeling Electric – Feeling Electric // the rest of the album may be of interest
Said The Sky feat. Missio – Darling – Darling [Single]
Sick Individuals – Made for This – Made for This [Single]
The Chainsmokers feat. BullySongs – Good Intentions – Good Intentions [Single]
Tiësto & The Disco Fries – Chant – Club Life, Vol. 4 – New York City
Vicetone feat. D. Brown – What I’ve Waited For – What I’ve Waited For [Single]
Vicetone – United We Dance – United We Dance [Single]
Wild Cub and Lost Kings – Colour [Remix] – Colour [Remix]
April and May 2015
Bipolar Sunshine – Daydreamer (Gryffin Remix) – Daydreamer
Calvin Harris feat. Haim – Pray to God – Motion
Chvrches – Get Away – Get Away [Single]
Disco Fries feat. Nick Hexum – Head in the Clouds – Autonomous // the rest of the EP appears to have some nice tracks as well
Flo Rida feat. Robin Thicke and Verdine White – I Don’t Like It, I Love It – My House
Giorgio Moroder feat. Sia – Déjà Vu – Déjà Vu
Gorgon City feat. Jennifer Hudson – Go All Night – Sirens
Hellberg feat. Cozi Zuehlsdorff – The Girl – This Is Me
Henri Josh & Katorz Pres Krash – Jump into Your Life – Jump into Your Life [Single]
Kaskade feat. Tess Comrie – Never Sleep Alone – Never Sleep Alone [Single]
Kelly Clarkson – Heartbeat Song – Piece by Piece
Kygo feat. Parson James – Stole the Show – Stole the Show [Single]
Laidback Luke & Project 46 – Memories – Memories [Single]
Mako feat. Madison Beer – I Won’t Let You Walk Away – I Won’t Let You Walk Away [Single]
Mako – Ghosts – Ghosts [Single]
Mako – Our Story – Our Story [Single]
Martin Garrix feat. Usher – Don’t Look Down – Don’t Look Down [Single]
Owl City and Carly Rae Jepsen – Good Time – The Midsummer Station
Panic Is Perfect – Go Go Go – Behind Your Eyelids // Make sure to also check the rest of the EP
Passion Pit – Lifted Up (1985) – Kindred
Rudimental – Never Let You Go – Never Let You Go [Single]
Sigma feat. Labrinth – Higher – Life
Syn Cole – It’s You – It’s You [Single]
The Chainsmokers feat. Great Good Fine Ok – Let You Go – Let You Go [Single]
Tiësto feat. DBX – Light Years Away – A Town Called Paradise
Tom Enzy feat. Chris Cronauer – So High – So High [Single]
Vicetone feat. JHart – Follow Me – Follow Me [Single]
Years & Years – King – Communion
Zedd feat. Selena Gomez – I Want You To Know – True Colors
March 2015 (retroactively added)
Alesso feat. Roy English – Cool – Cool [Single]
Chvrches – Dead Air – The Hunger Games – Mockingjay Pt. 1
David Guetta feat. Emeli Sandé – What I Did for Love – Listen
Diego Miranda feat. Miss Palmer – Believer (Original Mix) – Believer [Single]
Eric Prydz vs. CHVRCHES – Tether – Tether [Single]
Kid Astray – Still Chasing Nothing – Home Before the Dark
Madeon feat. Passion Pit – Pay No Mind – Adventure
Robin Schulz feat. Jasmine Thompson – Sun Goes Down – Prayer
Robyn with Kleerup – With Every Heartbeat – Robyn
We Trust – The Future – Everyday Heroes
Wilkinson feat. Talay Riley – Dirty Love – Lazers Not Included (Extended Version)
February 2015 (retroactively added)
Avicii – The Nights – The Days – Nights
Caotico with Tove Styrke – Brains Out – Sunrise Confessions
Capital Cities – One Minute More – In A Tidal Wave Of Mystery
Citizens! – Lighten Up – Lighten Up [Single]
Clean Bandit with Jess Glynne – Real Love – New Eyes
Faul – Something New – Something New [Single]
Giorgio Moroder feat. Kylie Minogue – Right Here, Right Now – 74 is the New 24
Kygo feat. Conrad – Firestone – Firestone [Single]
Lucas Nord – Run on Love – Islands
Madeon feat. Kyan – You’re On – Adventure
Madeon – Imperium – Adventure
Madonna – Living For Love – Rebel Heart
MINX – Don’t Fuck with Me – Don’t Fuck with Me [Single]
Moby with Wayne Coyne – The Perfect Life – Innocents
San Fermin – Jackrabbit – Jackrabbit
Steve Angello feat. Dougy – Wasted Love – Wild Youth
Take That – Lovelife – III
The Magician feat. Years & Years – Sunlight – Sunlight [Single]
Thunder & Co. – Apples – Nociceptor
Thunder & Co. – O.N.O. – Nociceptor
tyDi feat. Cameron Forbes – Somebody For Me – Redefined
Walk the Moon – Shut Up and Dance – Talking is Hard
Years & Years – Desire – Y & Y EP
January 2015 (retroactively added)
Avicii – The Days – Stories
Axwell && Ingrosso – Something New – Something New [Single]
Calvin Harris – Faith – Motion
Calvin Harris feat. Ellie Goulding – Outside – Motion
Caotico – Smile – Bad Heart – Smile
Cazzette feat. Terri B! – Blind Heart – Blind Heart [Single]
Cazzette feat. The High – Sleepless – Sleepless [Single]
Don Diablo – Starlight (Could You Be Mine) [Otto Knows Remix] – Starlight (Could You Be Mine) [Otto Knows Remix][Single]
Echosmith – Cool Kids – Talking Dreams
First State feat. Sarah Howells – Skies on Fire – Full Circle
Galantis – Runaway (U and I) – Runaway (U and I) [Single]
Giorgio Moroder – 74 Is the New 24 – 74 Is the New 24
Hardwell feat. Chris Jones – Young Again – United We Are
Jungle – The Heat – Jungle
Sigma feat. Paloma Faith – Changing – Changing [Single]
Sigma – Nobody To Love – Nobody To Love [Single]
Take That – These Days – III
I figured out I didn’t post anything here for quite a while – actually more than two months! There have been a series of events that have stopped me from updating this blog and, for a good part of these two months, have stopped me from doing anything besides checking my email and doing some school work.
The first cause for my online absence was that, a few days after I posted about this server having been reloaded, school classes have started. I happen to be taking probably the hardest school year I ever took – at least, that’s what older people said before it started, and which proved to be true now that two months of classes have gone by. Free time isn’t that abundant and I prefer to spend it doing actually something more useful than writing about random things on this blog. That almost explains why I haven’t been active on communities like FreeVPS. But there’s more…
Some time in mid-October I was left without a reliable, 24/7 Internet connection. This, after two or three months without an unlimited-traffic Internet connection, during which I had to hold the downloading of system updates for both Linux and Windows on all of my machines, plus the Android tablet; to keep to a minimum the access to online streaming media; and of course to hold any other big download/upload tasks. I had no Internet connection at home, which means checking the emails at school when possible. Checking anything other than email is horribly slow and unpractical on my old phone, and that’s why I repeat email is the fastest and most reliable way of communicating with me.
At the same time, I was being kept busy with school work. Free time was spent developing an Utilities software for my graphic calculator, a Casio fx-CG 20; this was probably the most useful thing I could do without an Internet connection, because at least gcc still hasn’t moved to the cloud.
Around 1st November, the technical problems that were stopping me from having Internet at home were solved (read: free wifi hotspot magically came back online!), and so the second cause for my lack of participation in the online life was solved. But there was still the first cause: school. So slowly, as I was having free time, I began to put me up to date on what happened while I was offline, and to make slow progress on my projects.
Apart from all this, I also have friends and family, and my real-life social life is way more active than it used to be one or two years ago (my brain must have installed some system updates, finally).
To conclude, on the IT side of things I’m now developing a JPEG image viewer for the Casio Prizm, using the picojpeg library (incredibly useful). The thing already works but is damn slow, plus selecting files is still a pain; this Prizm add-in isn’t yet published anywhere, or even announced on any place except this blog post (and don’t consider this an official announcement).
I finally had time to fix some bugs at tny.im and add some features: the optional short URL toolbar is now powered by Meny, which was developed by a guy which also has lots of other awesome work, namely a promising online presentations service called rvl.io.
I’m also trying to keep participating on online communities such as FreeVPS and Cemetech, and to keep my Twitter feed rolling, but the first cause for my online absence is still valid, and will only stop being on the beginning of July next year. This doesn’t exactly mean I won’t be online, but that you shouldn’t expect me to be as active as I once used to be. Again, if you need something, email me (admin at tny dot im, or my username on Gmail).
Until next post!
People who follow my work probably already know I’m an user of world’s first digital cryptocurrency, Bitcoin. I’m not a very advanced user, I just use it for storing the little profit from my websites and receive a few cents for some occasional work I do online. It is also the only way you can donate money to me. I’m always looking for ways to earn a little more money in preferably free/easy ways, and I’m a bit tired of going through free offers, getting free bitcoins from faucets and waiting for the occasional cent from ads. I don’t think freelancing in the web development area is for me, either – I feel like I’d never manage to finish any work in time, and my skills are not that high.
So, back on topic. What brought me to write this post were two things: a) I didn’t post here in a long time; b) I’m doing this for money. Heh, joking, I’m not doing this just for money. I explain: I was yet again earning a little money from Bitvisitor, when I came across Rugatu. I had read and seen it before, but I never cared to visit it. I thought it was just another questions and answers (Q&A) site, like Yahoo Answers. Honestly, I have better use for my time than answering questions from many noob people (sorry for being harsh, but that’s the truth!), even when the use for that time is spend hours laughing at 9Gag. Oh well – I better stop now, this is ruining my reputation.
One thing made me stop for looking more carefully at Rugatu, and it was probably the only thing that made me register, for the first time ever, on a Q&A website. The thing is, this Q&A website runs on OSQA, which is Open Source software licensed under the GNU GPL version 3! Amazing, isn’t it? Amazing it might be, but no, that wasn’t exactly what made me register on Rugatu. The fact that one gets rewarded in Bitcoins, when answering others’ questions, was the distinctive aspect that made me register at this Q&A site. This may look irrelevant but for me it makes all the difference: you get paid for your work of answering questions.
Yes, I’ll probably still answer questions from noobs, but hey, when my answers are good, I get paid for them! It makes a big difference.
And another thing: that site is not very well known yet. There don’t seem to be noobs there, nor stupid and non-sense questions. Which means I won’t be answering “How format ma pendrive?” questions but interesting ones put by other people. Let’s hope I haven’t set my expectations for Rugatu too high. It’s just that I registered perhaps an hour ago, and still haven’t answered any questions. I’ll try and do it right after I finish this post.
But why would I be writing about this little-known site called Rugatu? Hell, I haven’t even written about my own cloud service which urgently needs to get clients or it flops and puts me owing money to other people, but instead I prefer writing about some Q&A service? I’m writing this for three reasons: first, it gets traffic to this abandoned blog; second, it helps Rugatu grow (I wish people wrote blog posts about my websites, so why don’t I start and do it first about others’ websites?); and a third reason, is a selfish motivation: money money, must be funny… Read here. Yeah, if my answer with this post gets voted up enough, I’d earn 1.50 BTC (over $10 USD considering 1 BTC is now worth about $7), which should be enough to help cover a flop with my service tnyCloud. In fact, if I earn, the 1.5 Bitcoins are going straight to the tnyCloud wallet to help with the server costs.
Sorry if this post looks like a forced positive review of a service which, actually, I haven’t tried very well yet. If it looks like so, then it probably is – but one needs to compensate the little amount of advertisements on this blog somehow, right? You can start thinking about what my next post will be: perhaps I’ll become a Microsoft advocate (ugh!) to win a free copy of Windows 8, or an Apple fanboy (ugh ugh ugh!) to win a Apple sticker (they don’t give away anything more valuable) or I’ll just argue how Samsung is right about their devices not copying Apple just in order to win a Galaxy Tab. Probably next blog post will be something just as boring as the one I wrote about the Like button some time ago. Eventually, it will be about intellectual property and the stupid thing software patents are.
For some reason, this post is looking like a link farm. I better finish it with a giant link to the website this post really is about…
Try it, question it, answer it! Then earn the coin 🙂
EDIT: I did it! I won the 1.5 Bitcoins. Yeah! 🙂 Thanks a lot Rugatu and everyone who voted.