28. November 2016 19:33
It finally happened. My first app for Android platform is just about to be released and is available in Beta channel. It was clear that I’m not going to release anything for Windows Phone market anymore, especially since all phones in family are Android based, but I had to start somewhere in Android, and what a start it is!
The idea came during the Halloween night, when I was about to pick up the trick-or-treaters and their parents from neighbourhood. The problem was – it was night, I didn’t know where they are at the moment, and they were wandering among other spooky wanderers. I needed to know their location, precise and fresh. It took a few phone calls and messages with coordinates until I found them. Not a big problem, but I would rather get rid of that.
Second problem was recurrent – when I have to pick up someone using the car, I want to make sure that person knows my whereabouts, so neither of us would have to wait. Or when I want to show where I am, so family would know when to expect me. And that I’m fine and where I am supposed to be.
And a nuance – I never want this information to be available all the time. For various reasons – from privacy to battery life of my phone. I want to press the button, share my location, and for a limited time I want that location to be current. More...
5. November 2016 04:25
Phones get faster processors, more RAM, more capacity and capability to work with larger microSD cards. Phones like Samsung Galaxy S7 and HTC 10 can take microSD up to 2Tb large. The largest microSD card available in the market today is 256Gb.
With faster CPU and higher resolution screens and cameras capable of writing 4K videos (like Samsung Galaxy S7 Edge camera, for example) comes the question whether the current cards support such speeds and whether you need to invest into higher speed card or resort to twice cheaper and slower one.
To make long story short – you don’t need the fastest microSD card. You can take any Samsung or SanDisk card and you’ll be fine. Read further for a longer story. More...
9. October 2016 13:59
Each day I am creating so many temporary files that I can’t really give you a count. Sometimes it’s thousands. Opening attachments from e-mails and instant messengers, saving images from internet for a single use, opening archives, deploying software and many other tasks – they all create temporary files that may stay in a hard drive for years.
By temporary files I don’t mean the files created by applications to temporarily store data. I mean the actual user files you don’t intend to use in the future.
Another type of temporary files is log files. Usually we have them on servers. Web server logs, mail server, your own application that creates a set of log files each day – usually you don’t need to store these files for more than a few months. Especially if these files are stored on virtual machines, like Azure or Amazon, where you are paying for each megabyte of storage.
There are two aspects in temporary files that may justify doing something about them:
1. They take space or they are produced in numbers that decrease the performance of file system. The file doesn’t have to take all the space of the drive – it’s enough to have thousands of files in one directory to make Windows freeze every time it’s trying to find and list these files. For some directories we would prefer to have a threshold of a particular time after which these files should vanish.
2. They may contain sensitive information that you wouldn’t want to leave behind. Of financial, medical, business, political or any other nature – when the file has expired, there is no need to keep it, but some files may require special care in form of secure erase. More...
5. July 2016 10:27
SSD are very popular these days. I can tell for myself - in all of my laptops I have SSD drives, and if it has more than one hard drive installed, at least one of them is SSD. My main laptop has rather interesting construction – it has only one standard size 2.5” hard drive, and a slot for M2 form factor SSD drive, which looks more like a microscheme than a “hard drive”. For me this means, that I have small capacity SSD (128Gb in my case) and large HDD, thus having good compromise between large capacity and performance.
With 128 and less of space, it doesn’t look like a good idea to migrate OS to such drive. Windows itself will take half of it, and then you would have to watch out for temporary files and whatever installation packages, so they wouldn’t install stuff that doesn’t require high performance storage, on SSD.
On the other hand, if you have a large existing hard drive with 500Gb of space taken over the years of work and play, migration to smaller SSD would be tricky. More...
20. June 2016 22:33
I am working quite intensively with Raspberry Pi, and recently upgraded to both Raspberry Pi 3 and Raspbian Jessie, that was released during last quarter of 2015 and is currently the latest and greatest version of Raspbian.
The paramount part of my installation is Chromium browser, as these devices have to access website that is only compatible with Chromium-based browsers. And I found that if with previous Raspbian you could just run “aptitude install chromium” and it would install the browser, now you are getting message “no candidate version found for chromium” and nothing gets installed.
To overcome this issue and install Chromium, you need to download and install three packages. Here is the exact script of what you need to run in console: More...
10. June 2016 14:26
This sounds crazy. But when you move your website to the cloud, you get problems in things you were previously taking for granted. Like sending e-mails. Basically, the problem is that many e-mail servers, usually ones of big providers, have Azure, Amazon and other cloud provider IPs blacklisted. When you attempt to use SMTP service from your virtual machine in Azure – in many cases it fails to deliver. This means, that your Azure machine can not act as mail server and shouldn’t attempt to deliver messages to recipient SMTP server directly.
Why would you use SMTP service at all? Well, mainly for the sake of performance. Your web application, be it ASP.NET, PHP, Ruby or whatever, will benefit from saving the outgoing e-mail message as text file somewhere on local hard drive, instead of trying to deliver it using TCP/IP, even if that’s done in asynchronous method.
15. March 2016 05:18
It seems like Adblock – famous add-on for Google Chrome that kept your web pages clean of malwertising – just crossed the red line. Instead of hiding adverts, it started to replace ads with even worse kind of ads – political ads. Yesterday I’ve opened IT website and I was shocked by abundance of political advertisement of “Amnesty International” that was inserted into the page by Adblock.
2 minutes later I stopped using Adblock.
5 minutes later I’ve got better option that I overlooked just because I wasn’t searching for anything better than Adblock. But guess what – there is something way better than Adblock.
The add-on is called uBlock Origin, and it works faster than Adblock, is free, has the same principles, but it doesn’t replace one advertisement with another. Instead – it completely removes it. Another benefit – I stopped seeing message “Waiting for AdBlock…” in Chrome, which sometimes extended the load time of the web page by many seconds.
In other words – Adblock repeated the old mistake, made by many companies before. You can’t lend your user base to someone, you can only sell it.
9. September 2014 06:09
If you are curious enough to develop software for Windows Phone, Microsoft got few surprises for you, which you may or may not already noticed, depending from how often you publish your apps.
First and the most important change is that Microsoft stopped testing new apps. Completely. This improved the speed of application submission from 3-7 days to 10-20 minutes. No one is going to check your app for compliance to UI, security and usability guidelines, as Microsoft has way more serious problems to solve – abysmal market share of just 2.5% and huge gap in apps with Google Market. And high quality, as you know, is an enemy of high speed, unless is backed by increased budget. Since Microsoft doesn’t yet control your budget, all they could offer is to help the speed of submission by eliminating the quality fence.
The downside of this is lowered quality of apps. For example, I released an application, which successfully completed the certification and was published in about 15 minutes, but failed to even start. That’s right, it produced exception right on start, no welcome screen or splash. More...
28. July 2014 19:15
A year ago I started an experiment. I've got myself a Windows Phone. I wanted to see if I can be happy enough to keep is as a replacement for an Android phone, and whether I could develop anything that I would miss in that platform. And so I've got myself an HTC 8X.
The phone itself, speaking about hardware, is pretty good. Apart from lack of microSD card slot and accidental restarts due to badly designed SIM slot, everything was perfect.
Pretty soon I realized, that things I could develop are either restricted by operating system, or would require support by third parties. So although I developed what I liked, it didn't really cover my user requirements, and with time I started to carry my old Android phone with me. Not to make calls, but simply for apps and internet for these apps.
A year later, I think it's time to draw the line and write down my experiences with Windows Phone. I think they might be interesting for you if you have no to little experience with Windows Phone and wondering what it's like and whether it’s worth trying.
First, here is a simple list of things that I, as a normal user, can and can not do with two mobile operating systems - Android and Windows Phone. Since this question is very popular and human memory is usually very slow, I decided to write down the points that justify me carrying an Android phone in a backpack. More...
29. January 2014 06:15
Spent 40 minutes of my life on new control for ASP.NET - the Currency Label. It allows you to add currency conversion painlessly just like a normal label. Actually, it is a normal label, just extended.
Currently it's in beta, but passed all tests so far, so you're welcome to try it on your website.