There’s nothing more frustrating when you find out you have miscalculated something. In my case, I’ve miscalculated the time left in college. I’m not doing bad in college myself, plus my GPA is pretty high right now to even worry about failing (and I’m always on the lookout if I get a bad grade). College isn’t as challenging as I wanted it to be, regardless there’s no time for petty grievances.

So it turns out that I miscalculated my time in college. I still have to tackle eight courses, the good news is that out of eight I only have to do 2 courses that are related to my major. The others are pretty much generic courses.

This really put me against the wall in a way. I wanted to finish already, send my CVs to the U.S and be done with it.

Not everything is gloom though, it also means I have plenty of room for improvements. It’ll also give me time finish some business here with the family.

As for live outside where I live. All I hope, or well, all I want is to meet great people out there.

As for theme development, it’s time to say good bye?

I feel like front-end development in general doesn’t suit me. I think I should refine the scope of what I just said: Web Designing in general is a job I don’t want to keep pursuing.

After I released the theme In Touch for Ghost Blogging Platform there was this awful feeling of dissatisfaction. I can keep creating themes just fine and keep going till I capture a tiny portion of the market. Creating themes on a high-level is easy, creating to push innovation is hard and most of the time unrewarding itself as you can’t match the prices the market out there normally has.

I’ll be available for hire, there’s no doubt in my mind about that. Although I’ll be focusing on desktop and mobile development for now. The more proficient I become in C++ more doors will open for me. Generally, I want to keep a good knowledge of C++ and C#/XAML.

I’ll be pushing the last fixes for intouch. I noticed there are like 2-3 problems with it that are visible.

Keep the iterations goin’

Alright, I’ve been meaning to sit down and post something not so enlightening; I feel like many of you should know this already, yet there’s always the person who hasn’t sat down to think about it.

The need for more software, the need for more forks, the need for improvements. I’ll be integrating web applications in “software” very, very loosely because at the end this post wants to tackle that too.

Whether you are building a commercial software or open source software there’s always a time where we have to ask ourselves, “has this been done before?”. Creativity is one of the most exhausting tasks in software. Yet, the thing that developers and end-users asks is:

“Why color the wheel blue when it’s already black?”, or “this has been done before. There’s blogging software a dime a dozen doing the same functionality”.

True, so true. I’ve stumbled upon so many blogging software solving different scopes and Content Management Systems that seems to focus so much on the internals while leaving the user interface in poor state.

If a software works for you, hurrah, that doesn’t really mean we should stop developers from wanting to improve, innovate products regardless if it’s commercial or open source.

You know that awful feeling when you are proud of your work yet you get shut down because “it has been done a million times”. I know, it strips you from any emotion you had about it, thus abandoning the project or half-assedly work on it.

Thing is, it serves as a purpose of growth from all the trials and errors. The developer grows, he or she might have not launched a successful product but the experience had was there, and that says a lot more than the people mindlessly attacking it.

More than that. Maybe a feature has been added that was never seen before in a workflow. Or the developer altered the workflow in such a way that it’s a delightful experience to use, yet the end-users doesn’t have all the features they have from X software that has been in the game for a whole decade.

So to sum it up, we need more iterations, more forks, more innovation out there. It might be a camouflaged wheel under the hood, who knows though, maybe that wheel can get you to your goals faster than the old trusted brand.

Fixing Ghost scrambled IDs after importing data

I’ve written a plug-in that exports data from Pelican to Ghost in JSON format. After writing the plug-in I realized that Ghost has a few quirks of its own and that is that if updated_at field is NULL the behavior in the admin panel gets a bit freaky.

This is why I came up with this small script. All it does is sort in ascending manner the posts and update the updated_at field with the value in created_at.

Personal growth, site fixes, and my new project

There are a few things that I’ve been meaning to talk about over this month. I’ve two or three drafts that I’ve to revise before posting as it contains certain subjects regarding the linux community. It’s more of a matter to neutralize the language and choice of words. Personally, I’m not a fan of sugar coating, sadly I know that sometimes people just read one line and they are already writing an essay on how wrong I am.

That’s not the case today, thanks god!

Personal growth is something I’ve been meaning to take care of. It’s been one of my goals to socialize and know more about people I meet. If you know me at a personal you’ll see that I’m more of a straight arrow, especially at work. You bark the orders and I’ll follow them without looking right or left.

Toning down the participation in internet communities have allowed me to relax and focus on myself rather than wasting time on useless debates on how to handle corner cases, or which is the best editor. I no longer have the patience to sit down and write long paragraphs sharing my views with other people online; I’d rather have a talk in person which is more enjoyable than seeing a person trying to prove he or she is smart while slamming programming languages such as PHP, or whatever library as a method to find friends or colleagues.

I’ve stopped caring about stuff. I don’t want to meet you if all you do is:

  • being negative all the time
  • slamming frameworks, and other methodologies because it’s the popular thing to do
  • always looking to be right rather than being human. I’m not sure about you, let’s say you are right for a second, what exactly did you win? Pretty sure it’s not the lottery.

Every day I’m feeling better, and more capable of taking on issues. My goal this summer is to be less critical, and be more understanding when it comes to people’s issues. I know not everyone has thick skin and I’ve made a few mistakes in life that might have made some people feel awful.

Don’t get me wrong. I also do it because I want them to see the other side of the coin.

Site fixes!

I wrote a small code to fix Ghost blogging platform database. I had this problem where all posts were scrambled in Ghost content section. The issue happened because updated_at field in the database had NULL value in them, thus EmberJS didn’t handle them gracefully.

I’ll submit the fix I did after this post.

My new project

So basically, I know I’ve said in the past that I’ve been looking for open source projects to contribute code. Sadly I didn’t find any project that was interesting for me. Even LibreOffice became a chore rather than something to look forward to.

This project is a productivity tool that helps the user reduce the tasks of file handling greatly and gets you organized in no time. I did the first commit today after 3 weeks of brainstorming day and night.

This has taken a great deal of my time mostly because not being a C++ developer means that I’ve to learn the language and the libraries available to do things. And the idea being “unique” meant that I had to put extra time and effort to come up with a decent workflow.

A workflow is, in my opinion, one of the most important things in this application. Which is why I’ve been analyzing each use-case and making sure that the user receives the best experience ever.

We’ll see how things go from here.

Even if it fails, so what? I got from it a lot of knowledge that I can now put to use in the real world.

C++ Adventures: QT5 and CMake

Lately I have been learning more and more about CMake, at first sight CMake looks like one of those build tools that you wouldn’t want to mess with because it can get quite messy when you start introducing conditions to your project.

I’ve been organizing the project structure of an application I’m working which I’m hoping to release this November. My main aim was to release it for Windows 10 which is the upcoming version of Windows set for summer. Personally after seeing the improvements of Windows 10 I can’t wait to use it myself.

That’s another subject to talk about later though. Configuring CMake to use QT5 isn’t hard, however if you are a novice like me with this build system then it becomes obvious that you have to research a bit more about it.

The first structure I came up for the project was this:

/ (root)
/Include (headers)
/Include/[modules] (headers)
/Sources/[modules] (headers)
/Tools/ (whatever scripts needs to be done, let’s say packaging)

Which means letting CMake recursively search each folder.

What’s been worrying me is that personally I want to separate the UI files from QT Designer from the sources files. I have yet to write a rule for that in CMake.

Why worry about project structures? Well, for one I know that sooner or later I will have to refactor and I don’t really fear refactoring. However, it becomes clear that if I want to keep working on this project I need to have folder structure that sucks less, simply put I don’t feel like wasting time moving files over and over again. Making the project modular also helps me separate the concerns of what a module should do and what it should provide rather than throwing everything in a /src folder.

After setting a basic structure I was able to compile the application. There’s still a lot more to be done though, such is development.