Bowers & Wilkins PX 🎧 makes me kokoro feel alive

I always saw myself only ever using Sennheiser products. I had a nice pair of MOMENTUM 2.0 which I ended up selling for the Bowers and Wilkins pair. There’s a very simple reasonable reason on why I ended up buying into a new brand. 

Sennheiser MOMENTUM 2.0 with the earpads off

It all started with the ears hurting every time I used the MOMENTUM 2.0.

I was getting dead tired of dealing with the same problem. After a session of 3-4 hours my ears would hurt in two different ways. The first reason is that my ears were too big and the cans couldn’t help but to clamp hard on me poor ears. It was painful to the point I ended up giving hours of music because if I kept wearing them the pain would increase and I don’t think I signed up for that. 

The second reason is harder to decipher. Sometimes when I listened for longer times and stopped momentarily for a few minutes my ears would be too overly sensitive. I couldn’t bare any sound without feeling disgusted or in pain. I had to stop as even listening to my coworkers was becoming a challenge.

So I set forth on looking for a new pair of cans thus, after hours of researching and hard work I found the Bowers and Wilkins PX.

If you thought of MOMENTUM as a dark and bassy headphone the Bowers and Wilkins has a slight more treble into it (not too much) and not overwhelmingly too light. It doesn’t shy out on the bass either but it’s obviously not a basshead’s go to for bassy headphones. (I wouldn’t know either, I don’t consider myself to be a bass or treble guy. I prefer a more well-balanced “jack of all trades” headphone)

I think what really surprised me about the headphones is how comfortable it is to wear. The build quality is great, sturdy even. I think they cheaped out on the buttons but it’s all forgiven at least from me… because for a product that’s ranged at $400 bucks at least they don’t have the audacity to sell you plastic like Sony or Bose does. 

I find the pair to be well balanced. I read reviews that the sound was muddy or that the product felt low quality… and after using them I was having a hard time believing it. The thing about the “sound sounding muddy” is that if it’s a low quality audio it’s truly going to sound like crap. And I’ve experienced that myself with a few remastered songs, I don’t think all types of genres shines with the B&W PX.

I think the first song that I was just baffled on how amazing it sounded was this track below: 

Listening to Lucid Dreams by Juice WRLD in Google Music (highest quality possible) made me realize that perhaps these were the headphones for me. I enjoyed listening to music so much to the point I would repeat tracks just to enjoy how they sounded and to this date I haven’t stopped doing that.

And it’s not just that genre. Anything acoustic sounds great on these cans. Electronic/Dance music is not inherently bad but I feel like other types of headphones may be more suitable. I just feel like anything electronic may not be best suited for the B&W PX. 

Sennheiser still has my heart with the HD6XX series, but my soul belongs to Bowers and Wilkins.

All that said, give the Bowers and Wilkins a try. This is by no means a throughout review nor do I consider myself knowledgeable in audio. I think after hearing the differences in Sennheiser, AKG, and now Bowers and Wilkins I can only hope to have a modicum of experience when it comes to audio. 

In conclusion, I am a very happy B&W user. My only complain is the sound leakage, it’s a bit of a problem in an office environment which is where I drive the cans. It’s not a deal breaker as I keep the volume around 60-70% but it also means I can’t fully blast it through at least in the office environment. But what I really gained back with the Bowers & Wilkins wasn’t just a good pair of cans I could go rock with everyday, it was restoring my desire to pursue different brands in audio and get to know them. 

I was giving up. After my experience with AKG I just felt it was a letdown altogether. Sennheiser wasn’t providing anything new to the table when you started comparing MOMENTUM and some of the headphones in the HD series. AKG felt more like a downgrade to Sennheiser, but in terms of design I would choose AKG in a heartbeat because I dig their designs. 

Then there’s Bowers and Wilkins which rocks in both design and audio. But don’t listen to me. If you have the opportunity, go try them out.

Two weeks with password managers (LastPass and 1Password)

As a rather “casual” paranoid person security is always something I obsess about to the point I have to take a break from obsessing about it because it just eats me alive. I feel like once you start focusing about security there are so many rabbit holes left open that you never stop closing them.

Whether that’s good or bad, it’s not really a healthy obsession.

I spent two (maybe three) weeks with LastPass and 1Password. Troy Hunt, a security-minded individual I follow and the owner and creator of HaveIBeenPwned has said it best: A secure password is the best you can’t remember. At first I had some real issues with that thinking, I’m used to memorizing long, unique passwords, and I also realized that there were issues with what I was doing. Password entropy being an important subject on all of this, and sadly still a subject that it’s hard to explain to people outside the field. I think xkdc explains it best

 

Another issue is password reuse, something I ended up doing because when you have accounts on over 40+ sites it’s impossible to remember all the unique passwords. I’m guilty, but at the same time I never reused a password on important sites (banks, paypal, etc).

 

Whether the comics comes off as arrogant or presumptuous it doesn’t eliminate the fact that having a good bits of entropy and avoiding password reuse are one of the most important issues. Password managers like 1Password gives you the ability to just “set it and forget it”. You’ll have a secret key and a master password, when combined it will derive a key to unlock your vault.

I started my journey with LastPass and it was an incredibly rough one to the point I was blatantly ignored when asking for a refund.

LastPass is great if your only focus is to just generate passwords and save them in your vault. Where LastPass falls, besides being plagued with security issues (you can make time for yourself to read their wikipedia entry), is that it immensely sucks in the storage area. I couldn’t for the life of me store a simple document of 2MB. It was nigh impossible, you just kept getting “Sorry, request taking longer than normal” to the point of needing to upload again.

I got fed up. I wanted to store my important documents in case I needed them “on demand”. I contacted support, requesting a refund and they proceeded to ignore my request to troubleshoot the issue. I actually played along because I didn’t have anything to lose but time… turns out uninstalling and installing the client doesn’t fix the issue. So I placed the request of refund AGAIN to be asked to record a video on how I’m doing the things. I refused to do so because I’m not comfortable of doing so.

In the end, I told them they can keep the money and shared that I had a very bad experience with them.

1Password by AgileBits, Inc

In waves of frustrations I discovered 1Password. I learned that 1Password had a very strong commitment to security and they were sponsoring Troy Hunt (which is how I discovered it).

The first things I noticed of using 1Password were the following:

  • The user interface is fast unlike LastPass
  • I could upload any big file with no timeouts or problems
  • The integration with OSX is lovely
  • iPad and Android support is superb
  • Had an additional secret key it generated per vault + your master password

Using 1Password has been a delight. I redid all my reused passwords from different sites that weren’t of importance, maintaining a healthy level of entropy in each generation.

1Password also features Watchtower which is an additional service that you aren’t forced to use. It checks how many times you have reused a password, match your password against Troy Hunt’s HaveIBeenPwned, match your email against Troy Hunt’s service. I think my favorite is matching your password against HaveIBeenPwned because THEN you know if your password has been truly been leaked and brute forced/cracked. 

Between HaveIBeenPwned and 1Password? Honestly, I feel secure and confident that my accounts aren’t going to be compromised. But, the thing with security is that you never have that certainty that you are secure. It’s a process of continuous improvement and continuous monitoring.

Beyond 1Password? I have been using multi-factor authentication as an additional layer and I’m currently researching Yubikeys to leverage an additional security layer on top of the services I use.

If you have any questions let me know, the comment section is below and if you want to contact me directly check my Contact page.

 

 

Final Notes on Microsoft Azure

These are my final notes on Microsoft Azure. It’s not meant to be taken as a review, but just yet another experience.

I’ve spent a total of two months with Microsoft Azure(referred as Azure from here on). Most of the time I spent with Azure was using their B-series virtual machines which for small/medium sites it’s perfect. My complaints about Azure does not start with the service quality but the prices they offer. I left Azure with a satisfied experience, yet somewhat bitter I couldn’t keep using them.

Azure is yet another cloud services like Amazon Web Services, Google Cloud, etc. You can spin up as many virtual machines, put them in the same virtual networks, or put them behind a load balancer, or simply keep it private as the choice is ultimately yours. There’s also a vast amount of services Azure offers for a very steep price as well. Managed database servers, DNS hosting, storage services, cognitive services, container services (application server plans), and the list goes on.

There’s something I have to point out. Like Amazon Web Services and Google Cloud, Azure is not for beginners. Yes, there are beginner tutorials but put it in the context of “I have experience configuring linux servers, but I’ve never used Azure or AWS”. That’s the beginner context I’d like to highlight because there will be a lot of terms that will make people scratch their heads wondering what they mean. I think it’s a necessity to point out what defines a beginner when it comes to cloud services.

Now jumping back to the subject. I loved working with Azure network security group (firewalls, etc). It gave you most of the controls you needed to open/close inbound/outbound ports. Their storage services was a incredible delight to use, especially and specifically the file share storage. Being able to mount the file share on Windows and Linux was just pure bliss for me as I could backup visually anything from a server outside Azure, or even my personal computer back into the file share. File (storage) is something I’m really excited about and something that I’d like to see grow consumer wise because there’s nothing more satisfying than mounting a file share, do your tasks, unmount and be on your way to the next server.

I couldn’t find any services that aligned with what Azure did with its File storage. And this is outside cloud services. I’ve been looking at a service where I could do this without paying an exorbitant amount of money. If you know any, let me know in the comment section.

There are two glaring issues I have with Azure. Let me start by saying that I know Scott Hanselman wrote (two?) articles titled Penny pinching in the cloud where he goes on showing you how to save money with Azure. I think having an estimate of $33 monthly without accounting for bandwidth is not saving money. This isn’t me criticizing him in any way, I just feel like the intentions may be misinterpreted as just telling people Azure is cheap and you should totally get on our services. And to be fairly honest he mentioned multiple times that you should just stick with “that $5 dollar service”, which by the way if you haven’t visited Linode and used their service it’s to be honest up there in terms of quality. It’s probably the best $5 spent if you are just starting out there.

I have to disagree with Mr. Hanselman on his “penny pinching” articles. Azure isn’t cheap and I don’t believe you can save any money outside of reserved instances. However, I do think that you get what you pay for. Linode may have the best $5 expenditure and get an amazing service, but Azure wins in the sense that it does not limit your CPU usage in any way. Let me do the best to explain: Linode, being awesome as they are have a somewhat strict and disturbing terms of services. What makes it disturbing? If you use your CPU a lot Linode may be notifying you about it, or even stop the services if they find it’s impacting other users. And I have a lot to say about this because to me while Linode tries to sell it as a “way to maintain quality; and this is a shared environment” in my eyes is just “we want to maintain a low level effort on limiting everyone VPS resources while maximizing profits”. This is my interpretation on how Linode operates, and ultimately it’s the vibe their terms of services give off. I’m open to be proven wrong on Linode.

Meanwhile in Azure, if you have a  CPU skyrocketing at 80% because it’s doing something CPU intensive Microsoft won’t bat an eye at it. So in a sense Azure, AWS, Google Cloud probably has your back on doing CPU intensive tasks. I personally would be at a fear using Linode, Vultr, Digital Ocean trying to use what I’m paying for. They could come and shut you down anytime they want.

The other issue is bandwidth. Azure needs to offer reserved capacity for bandwidth. It’s direly needed for that wide adaption on small business/medium business sector. No one wants to pay $88 bucks for 1TB bandwidth. I’m not saying that everyone is out there hoping to use that amount because if that was the case a lot of service providers would be either out of service or plainly struggling. The pay-as-you go for bandwidth has to be improved for a massive Azure adoption rate, in my opinion. I can deal with virtual machine prices because reserved instance has my back on this.

In conclusion: Microsoft Azure is amazing, and ultimately if you have the money and don’t mind paying premium I ask you to give it a try.  For small time people like me, Azure comes off as an overpriced service. I hope to come back to Azure someday, but it’s highly unlikely with those bandwidth prices.

 

Site updates: Done, and done.

I finally finished moving everything off Microsoft Azure. Using Azure made me realize that as much as I wanted to use it it was just a huge money sink for what I was going to use it for. Over the days that passed I was just pondering whether or not I should stay with Azure. It didn’t sit well for me paying additional fees for Bandwidth, disk performances (reads, writes, premium, standard), and other types of details.

I hope that in a near future Microsoft Azure offers a B-series virtual machine with the capability of reserving bandwidth capacity. It’s a much needed feature for customers that have small or medium sites. I know that most of Azure is managed, as in, if I open a ticket the standard support is supposed to do the work and investigate what’s going on. I know it’s not profitable assigning so many resources to support small/medium customers when you want to keep that response time low for enterprises.

I hope that in the following days I have the time to write a long winded post about the cloud and the current prices. In fact I’m hoping to talk about Linode, Digital Ocean, Scaleway, and other services where I spent my time doing setups.

Now, having said all that. I ended up in ArubaCloud. I thought long and hard about it. I gathered that many people didn’t have problems with them. I’m actually excited because not only I got a low cost out of it but I can now create actual affordable virtual machines based on current needs: Do I need an e-mail server? Let me spin up a VM. Do I need an additional SQL Server? Let me spin up a VM and see if I can even out the current load.

I ended up creating a setup I really liked. For a long time I wanted to have SQL Server separated from NGINX/Apache, and with ArubaCloud that was made possible so now I have a dedicated SQL server serving this site and a HTTP server (nginx) serving all dynamic/static data. I loved working with UFW, setting up the firewall, fail2ban, etc. I think if I have to put an order out there it would be like this:

  • Spin up a VM in ArubaCloud with Ubuntu.
  • Notice that it doesn’t have the latest Ubuntu, but that’s okay with Ubuntu Xenial I can jump to 18.04.
  • Jump to do-release-upgrade -dand that will guide you through the process.
  • Once upgraded, which shouldn’t take you more than 30 minutes, apply security settings to sshd_config and add the rules I need to protect my VMs with UFW which is a tool to simply firewall management.
  • Install fail2ban, change SSH port and so on.
  • Configure server roles (DB, HTTP Server in my case)
  • Install LetsEncrypt’s amazing certbot.
  • Generate certificates for your site and be sure to enable SSL on your virtual host.

And the steps goes on and on and on. It looks tedious, and sometimes it is. I enjoy setting up my environments. After all the configurations were done?

I had a few hiccups from the MySQL Server. I wasn’t getting a decent response time, I think it was a network issue because as I’m writing it the response times have improved greatly.

There’s still a few security enhancements I have left to do, but they aren’t exactly priorities. I feel incredibly accomplished with my little journey on configuring my first remote MySql server and making it work with the HTTP server. At first sight it isn’t hard, but as you start considering security things become a bit harder.

 

ArubaCloud is not as bad as I expected: A contender to the “one dollar wonder”?

I’m astonished that my first experience with ArubaCloud is not as bad as I initially expected. It’s not how I expected to open this post tonight and it’s certainly something that I’ll be giving a real test throughout the year because when you offer $1 Virtual Private Servers you can’t help but wonder how they stay in the business while providing such a cheap service.

Let me start by saying that this is not a VPS review, but hopefully a journey that will lead me to do a full review in a near future. ArubaCloud simply put is one of those services that makes you scratch you head and wonder if it’ll be okay to leave your site/blog/forums in the hands of a $1 dollar service.

What can I expect from a $1 VPS service? I have no idea. But I can tell you what I don’t expect from a $1 VPS:

  • Network stability
  • Good uptime
  • Support (come on, let’s be realistic here and say that support was never thought of for this type of service)

ArubaCloud has a lot of things that it got right: The separation concerns between billing and managing your cloud are split in two different areas. Billing takes care of charging for the service and the control panel manages all things with the service. At first sight it may not look like the most user friendly experience but having that peace of mind that I can have two different passwords for billing and managing my cloud is not that bad in my book. Of course, this is incredibly debatable and I’m sure there are people out there that don’t want it like this.

ArubaCloud control panel is the heart of all things related to the cloud. The server creation process is straightforward but the user interface leaves much to be desired of and while that’s the case I was still able to get everything up and running in exactly:

Exactly one eternity later. The problem with ArubaCloud is that it’s under so much demand that it took around 6 hours to get my server through whatever queue they have. Before I even had access to the control panel I had to wait 24 hours to get my ArubaCloud account fully activated because it’s, and this is conjecture here, manually activated.

Another bad thing is that their ticket system is quite literally broken. I could never open a new support request. On a similar note, I don’t think I would blame any poor soul there trashing the ticket system so it doesn’t work because the high amount of support tickets for a $1 VPS must be too damn high.

I researched about ArubaCloud a bit before diving in. Yes, I was doing a full checkup on it because I’ll be using it in production for the hostname https://storage.thehumble.ninja/ and as the name states it’s mainly used for storage at the moment.

Now for the intriguing part is that, and please bear with me here because I will probably be called out for this and it’s only expected. Whether I hit the cluster bingo or not I can safely say I’ve had a better experience on this $1 VPS than on Vultr, Digital Ocean, and Namecheap (VPS, and shockingly it’s faster than the VPS Namecheap provided me). Usually my experience with the services I mentioned above is that they have something in common, a common that should also affect ArubaCloud but strangely doesn’t. They are under high demand. I’ve yet to replicate the same performance I get from Azure in DO, Vultr, Namecheap. I do not know why but Azure and now ArubaCloud performs better for me than any of the services I mentioned. Whenever I used SSH on DO, Vultr, Namecheap it always lagged out and took a while to send/render what I typed, not only that the time taken to render PHP pages was just longer.

It’s all highly dependent on so many factors that I know I’ll be called out for the simply reason that not everyone is experiencing the same. It could be a networking, hardware, availability of the CPU/Disk to process my requests to it (which is also part of hardware). With Azure I feel like I have a local server at home because of how simply responsive it is and with ArubaCloud I feel the same as well.

After my server was set up I upgraded the server to the latest Ubuntu Server LTS (18.04). I enhanced security the best I could and enabled UFW after setting up all the rules because I don’t like leaving ports opened to the public. Then I did a speedtest and to my surprise it wasn’t that bad:

In conclusion: It’s one dollar. I don’t expect much from a dollar and you can only stretch it so much to the point that you get a VPS out of it, quite elastic if you ask me.

In all seriousness. Give ArubaCloud a try. I am in no way related to them, but I thought that if you are someone with a site that currently can’t spend on a premium service like Vultr, DO, Linode, and the whole known gang of cloud hosting then honestly you don’t have much to lose at all.

The inadequacy of HTML, delving into C, and pondering remote jobs

I’ve been working with HTML in low-level languages like C/C++ and I must say that it’s been a rather frustrating experience. One would think that the task I’m doing should have been done ages ago, since the conception of the project. Alas, that’s not quite right. What you fail to realize is that you should NEVER underestimate the dirtiness of HTML outputs all around the world. This whole week has been about cleaning/scrubbing/sanitizing HTML. I ended up grabbing to rather awesome third party libraries, one called pugixml and the other libtidy (also known as tidy-html5).

libtidy, being a pure C library took me a while to get the hang of as I’m not that experienced in C. Even though I’m writing C++ it doesn’t mean I’m working with pointers the majority of time (mostly on the stack). It was more of a game of “copy this chunk of memory and put it as an argument in this C++-powered method so I have more control over it with the classes I’ve built. But I needed it to work, regardless on how long it took to get right because without tidy it would be really, really hard to do any scrubbing. pugixml and other XML parsers can get quite cranky while parsing misplaced tags.

Which brings me to pugixml!

Apparently QtXml module is no longer maintained as it has reached a matured state. The array of classes QDomDocument have in general feels suiting to do the job, sadly the documentation stresses that it uses too much memory, and apparently “pugixml is faster than QXmlStreamReader”

In the end. I chose pugixml because it’s just simple, it doesn’t have the annoyances QXmlStreamReader brings.

Another subject I wanted to bring is the interest of the C language.

I’ve been thinking of learning more about C. At least the basics to defend myself from cases like libtidy. I also wanted to learn more about C due to Gtk3 and due to getting closer to system programming (not that C++ isn’t capable). Mix this interest with me wanting to work with microcomputers or embedded systems and I might make something out of it.

Lastly there’s that thought of me wanting to get a job related to my field. I might try to get a job remotely, well, time will tell. For now I’m too tired, mentally spent, yet as I finish this post I have a class to attend to in college. 🙁

The weird case of foreign languages

I have noticed over the months I have been working on my app that managing foreign languages like Japanese, Chinese, Korean, etc takes a memory hit to the point that it spikes up the memory usage–as one would expect. Sure, I expect more memory usage… but we are talking about a spike from 60mb (normal usage) to 80-100mb usage per entry–thus I was forced to call garbage collector manually as I couldn’t wait for the QML/JavaScript engine to do the clean up when there’s “inactivity”.

So, I was worried and added initial linux support to my app (never been planned to be released under linux) and found out that languages such as Japanese walks a fine line of 40mb memory usage. The garbage collector works twice as fast as well. For example, in Windows I’d call garbage collector and it doesn’t do it that fast. In linux? Blazing fast. It’s not much about the speedness of how fast it takes to free the memory, it’s the usage. I’m talking that Windows still takes 60-80mb+ (and up) while the linux build keeps walking the 40-50mb line.

Now, initially I suspected a memory leak, but that wasn’t the case. The Windows build just takes that much memory, and it worries me. Part of what keeps me at ease is that since this will be an android application; I can expect the same behavior that I get here in my linux mint in Android. Memory will be freed and the usage will be kept at minimum.

Granted: Pure naked eye seeing memory usage is not enough to suggest there’s a memory leak or that there’s a memory mismanagement, that’s the job of a profiler After running valgrind a few times I couldn’t find any memory leak just petty warnings, so I proceeded to guard against it, well, it wasn’t much about guarding as I honestly needed to free the objects that are no longer needed after X time. Plus, I also rationalized the usage that Windows is just being Windows… maybe Qt is pulling something that requires big allocations in Windows, but not in Linux for whatever reason. I do think that it has something to do with the font mechanism in general… but who knows at this point.

Another look at elementary OS (Freya)

As a Final Fantasy IX fan sometimes I look at the codename they gave it and grin as I recall the fond memories playing throughout FF9.

I scratched off elementary OS on the grounds that while it was heading towards the right path the terminal lacked customization. Sure, I could have called another terminal …. which I didn’t think of back then.

Screenshot from 2015-12-07 00:54:32

elementary OS is often called a “cheap OSX clone”, I think it’s unjust to just swear off the distribution due to that. I do think that they do have a potential audience to grab with their vision and mission. elementaryOS provides a more sensible user interface that doesn’t hint or give any complex trait that GNU/Linux share throughout its history. And what I mean by this is that compared to Linux Mint’s Cinnamon, eOS is like a complete overhaul of how a Desktop Environment should interact with users. And I feel it’s working for them.

elementaryOS is beautiful

And I might say, simple. Unlike the rather bad decisions GNOME 3 team made when designing the GNOME shell, eOS simplifies the interface providing a grid view of apps or a category-based list.

OSX is strong with this one

Screenshot from 2015-12-07 00:55:15

While I don’t mind the whole OSX gray-ish theme one of the changes they made to dolphin is that it supports a new type of view, you can see folders in a column view, which can be pretty helpful when you are organizing files.

Don’t take this as a review

I might add. This is a pretty “quick” take on elementaryOS. I like it so far and have considered putting it on my laptop a few times yet I don’t really feel like making any drastic change at the moment. Maybe in January, I’m just hoping they release their next iteration already.

A challenge that must never be overlooked: User Interface

Only 2-3 weeks away to finish this college trimester. I’m really excited to know it’s “almost over” as this year has been full of challenges in real life, bumping into personal struggles and family issues can really suck your drive to develop.

My disgust with Ubuntu has been slowly dissipating, as I wrote in Disappointed I ran into issues with it, issues that permanently crippled my computer. As a former linux user, and as someone that loves the linux environment in general you know you will always have those little urges to come back and use linux as it’s pretty much “your home”.

Sadly–no, actually fortunately I’ve been investing a good amount of time learning Windows. Its set of APIs and technology it provides. Let’s sit down and be realistic for a moment that it’s hard and has always been hard to monetize open source projects, any developer will always choose their family over ideals.

So this brings me to today’s subject: Interfaces.

I’ll admit, I suck at designing. I’m good in coming up with interfaces ideas, but putting things together in a very concise manner to provide a decent user interface is incredibly hard. To maintain a balance of usability, functionality, and “modern appearance” of an application these days is hard.

I consider myself to be more of a backend type of person. I like working in the internals parts of the application. I love learning to improves ways of providing metadata so that the user interface can function without the UI being the become the dictator of how the backend should be designed (don’t mix business logic and view, etc) and thus allow me to target multiple platforms and gush out more views to different screens.

As I’ve been designing the application I’ve gone through three or four drafts. Each draft being 20-30% different from each other. Drafting also means that you are dedicating your time to solve possible corner cases, it’s not much about throwing pretty colors, gradients, and call it a day. (I wish.)

During the time I’ve spent drafting/sketching the interfaces I’ve found myself sinking a lot of time in the user interface planning stage. Whether that’s good or bad I don’t know myself. Time will tell, I guess.

So the easiest way is becoming a hardcore fan of your app

I feel like placing myself in the users shoes is MUCH, MUCH easier than sitting as a developer and concluding that I should throw everything in TableViews and TreeViews, with lots of checkboxes and call it a day.

So I began to give each view specific purpose, a mission that a view and its partials needs to complement each other to satisfy the user’s needs. User clicked on new section -> show loading animation -> a new view appears -> new view is a gridview in nature. Hint the user that you can press and hold each grid for more options. Each option complements what to do with said grid cell.

And so on. It’s a very, very tedious process in my humble opinion. Designing applications internally (OOD, modular system, etc) is hard, UX is hard, frontend is hard. Quite the obvious conclusion, I guess.

Something Happened: Windows 10 upgrade, and linux dual-booting

Two days ago I joined the many in upgrading my existing Windows 8.1 OS to Windows 10. There are plenty of features I’m very excited about such as Virtual Desktop.

Something happened.

Something bad happened, if you are a linux user there’s a high risk that if you are using the same hard drive disk to dual boot, as in having different partitions, then you are probably in for some struggle.

This stems from Windows 10 inability to actually tell which partition is actually the Windows one. Which is weird, this is my old partition layout:

  • / (ext4)
  • /boot (ext4)
  • /home (ext4)
  • swap
  • Windows (ntfs, duh)

So basically, that was the layer I choose a long time ago. What Windows 10 kept doing was mistaking the /boot partition was the main one, trying to get meta information such as free disk space.

Solution?

Have a Windows repair disk at hand. There’s just no way of going around this problem. Basically I forced Windows to recognize ext4 partitions through ext2fsd project. It actually worked at first, but the main issue remained; the setup thought that the /boot partition was the primary one (containing Windows).

Knowing that there was no way around it I decided to just give in and delete all linux/swap partitions.

There’s a catch, you have to recover MBR and fix the boot records. You can do so!

Boot your windows repair cd. Use these instructions at your own risk. In no way I’m responsible for what happens to your computer.

Go to repair computer  
Advanced tools -> Command prompt  
type:  
bootrec /ScanOS  
bootrec /fixmbr  
bootrec /fixboot  
exit  

Reboot your computer

If something like /Boot/BCD error appears

Then boot the Windows DVD again

Go to repair computer  
Go to advanced options  
Go to a label that says "Automatically fix issues"  
It will find the issue and solve it. It will automatically reboot after it's done fixing the issue  

By now you should see Windows logo and everything is normal.

The catch

I’ve yet to test if dual booting is yet possible with Windows 10. I was planning to reinstall Fedora 22 back.

I’m reminded that the os-prober Fedora 22 ships may not detect Windows 10. This means that I’ll have to do a lot of lifting to actually dual boot.

Yet, how does it exactly guarantee that the dual boot is possible? It should be safe to assume that the boot loader is the same as Windows 8. But what if it isn’t? This is pretty much why I didn’t toy with the dual-booting option. I didn’t want to go through fixing mbr and records again, it’s actually very time consuming.

Windows 10

I’m finally in Windows 10. After all the decisions taken it feels good to actually use my desktop.

Windows 10 feels like it has taken inspiration from GNOME 3 and KDE. The taskbar in Windows 10 feels almost the same as KDE with Icon-only taskbar. The virtual desktops shortcuts behaves almost exactly as the one from GNOME 3.

Sadly, these are the things that the average user may never know.

I feel like Windows 10 took a lot from what makes the current desktop environments. Whether you share this feeling or not is completely understandable.

Cortana

I’ve had a lot of bad experiences with Google voice crap. Cortana? Cortana is INCREDIBLE. Privacy issues aside I’m looking forward to see how Cortana evolves from here.

And so it ends. A rather “straight to the point” post. I’m hoping to be more detailed in the future about Windows 10.