Things that help focus – Part 1

Posted on Leave a comment

Every software developer has days where they start to think, if only “I were smarter, I could get so much more work done”. In programming this is something that might actually be true since a skilled programmer is much more efficient than a neophite. It’s true that skill is more about experience and less about just being smart, but an edge that lets you focus and retain information better would be a big deal. Not just in programming, if you look there’s a massive booming industry in things that are supposed to make us smarter; for every doctor that talks about fitness and good sleep the average cups of coffee consumed by an American shows that people don’t really have time for those things. Fitness, good diet and loads of sleep are an ideal that a lot of people never reach, instead they want a quick solution.

That’s why the inventor of 5-hour energy became a billionaire.

It’s obvious people want a quick solution to their problems. Now this next statement is going to be really shocking. I don’t think there’s anything wrong with that. Life is already complicated enough, but it used to be slower, less efficient and in many ways more complicated and dangerous. Technology and human discoveries fixed these things and one of those discoveries was coffee, or at least modern extraction techniques. There is nothing wrong with wanting to be your best self and to get the most out of life, and there is nothing wrong with wanting these things quickly. It’s the cool thing to stand back, hold your head up high and go “you can’t have everything right now, stop being impatient and work for them”. Really though, there’s no built-in universal law why not, it might not be practical for you to get what you want immediately, but that’s not the same thing as it being fundamentally impossible.

My point, is that it’s perfectly natural and healthy for people to want to be their best selves, even if their lives make it difficult to achieve these things.

So let’s talk about concentration aids. Things that have been proven to improve concentration and some physical ability that are relatively easy to use.

Creatine

According to an Australian study performed in 2003. Creatine supplementation (at least for vegetarians) has been shown to boost memory by at least 7% for the small 5g dose / day. Not huge, but the study was very thorough by switching around the two groups and letting the creatine wash out of the test group between switches. It’s worth noting that the following study determined that creatine supplementation is safe in these levels.

For those who are unfamiliar with it, creatine is a natural product of the liver and kidneys that promotes the formation of ATP inside the muscle. ATP is what stores and releases energy created by the cells to fuel muscle contractions, more ATP means more time until you start getting exhausted. Creatine as a supplement adds more creatine into the blood, which means higher ATP in the muscles.

I note that the final statement in the article explains how creatine is not known to be fully safe and that you are better off studying for an additional 20 minutes a day if you want to improve your exam scores. So essentially you can improve both your mental and physical ability (Creatine is normally used for personal training after all) by buying an off the shelf supplement sold in every supermarket or you can study 20 extra minutes every day.

Of course I’m not a doctor and everything has associated risks, so you would definitely be safer taking the route of additional studying. Creatine related incidences are very rare, but they do happen when people consume vastly excessive doses for long periods since creatine also causes the muscles to swell slightly from retaining additional water.

That being said, my personal choice would be “Con-Cret”, the “Creatine-HCI” formulation that dissolves in water. It’s probably worse for your teeth since I can swear that I feel it coating them afterwards but it’s much nicer to drink than any other formulation, all of which feel like drinking sand.

Nicotine

No, this does not mean you should go out and take up smoking. However nicotine patches were shown to improve physical performance in athletes during sprints and a recent study showed that nicotine acts to protect the brain during stress, at least in mice.

Of course even nicotine patches will make you nauseous and throw up constantly, so they’re not exactly helpful and fun. Smoking has also been shown to affect the developing brain and cause issues during pregnancy. Still if you’re old enough that you’re not worried about your brain developing or not capable of getting pregnant, the idea of something that helps sustain your brain during stressful periods might be appealing.

It should go without saying that you shouldn’t suddenly take up smoking for the health benefits. You’ll be much worse off in the short and long runs, however a lot of those issues stem from inhaling cigarette additives through your nose and into your lungs. Patch wise, there are fewer studies showing it’s dangerous. Which may not mean anything.

By the way, the boost in physical endurance from nicotine patches in their test? It varied between 10% to 23%.

Bacopa Monnieri

It turns out that this plant, which has been used in traditional¬†Ayurvedic treatements for epilepsy and asthma also helps improve memory. Specifically studies have shown that Bacopa boosts… or more specifically slows down the rate at which people forget new information. The end result is that Bacopa significantly improves the retention of new information. Mind you that “significant” in scientific terms is usually around 5%. So a 5% change between the control and test groups is something that a scientist would describe as significant.

By the way, in mice Bacopa causes reversible decreases in sperm amounts. In humans in causes nausea and gastrointestinal upsets.

On the plus side, it’s easily available at many health food shops as a memory supplement, although the effects are only really seen after a few weeks of use. This means it will take some discipline and organization to see results, and I’m personally familiar with the feeling of forgetting a supplement when life issues start piling up.

Conclusion

Wanting to be better is something that’s been around forever, the Epic of Gilgamesh, one of the first stories that we know of, is about a man who wanted to surpass himself.

It’s normal and healthy to want to be better than you are, not just more experienced, older or wiser, but to run around in a better body and for things to naturally come easier. I also don’t doubt that we’ll figure that one out more as time goes on too.

Recent changes in the newest version

Posted on Leave a comment

Recently we’ve released a new version of Update Controller, version 1.0.8. There are a few small under the hood changes but the most noticeable one is the implementation of Material design on the interface. Material design are Google’s principles for web and app interfaces that make them more immediately intuitive to humans, so for example every item is supposed to have virtual depth and cannot pass through another item. Additionally all items are to create shadows that shine on the surface below them to indicate immediately what can be interacted with. The design guidelines also cover animations, similar to the kind that you will see when you press any of our implemented buttons.

MaterialInteface

 

This design stands out in the browser, but fits in somewhat better with the overall aesthetic of Windows 10.

If you’re wondering how we got the Material effect on Windows it’s due to the work of Ignace Maes and his excellent C# library at github.

The other changes are under the hood to reduce code size and refactor several places that might potentially have caused issues as well as reformatting the manual to shrink it down. We might have gotten a bit too enthusiastic with using good quality images when the manual was first written and although the current version looks identical it’s actually about one quarter of the size due to reworking both our images and the compression used inside the pdf.

By the way, if you’re curious how we sell software online, the back end of our site is a WordPress instance, but the buy button runs through Shopify. Additionally Shopify allows you to attach plugins to your account and run transactions through them. One of these is a plugin called “FetchApp” which allows for software downloads after a purchase has been completed. They send the email on success and allow re-downloads after the fact automatically, they also send updates if the software changes so we can republish to our clients very easily.

I am aware that there are other software-specific sites for online publishing, but this method works very solidly so far and I wouldn’t particularly want to change it.

We had some assistance

Posted on Leave a comment

We recently got some additional assistance rebuilding our main download page from the guys at QWERTY Software Development. So this is a shout out to them, thanks guys, the new page looks a lot better. Also we’re moving the new blog content over to be on the same server as our main page in a separate section off the main site. It seemed silly to have multiple separate domains when people interested in what we do should only really have to go to the one site to find out.

While we’re on this subject, it’s probably worthwhile to talk about the new website.

This is what the new redesign looks like.
This is what the new redesign looks like.

It’s still the same WordPress instance as before, but with a slightly more complicated template. At this point I would definitely state that if you’re looking to run a blog on the internet, WordPress is probably not your best choice for it. The blogging functionality is still fairly basic and it’s somewhat complicated for what it needs to do.

WordPress’ main strength is that it’s very customizable and there are plugins available for almost everything, including at this point live page designs. This makes prototyping and changing your old pages much faster, and it makes it easy to add in E-Commerce functionality, chat windows and other tools. It’s easy to underestimate ease of use, but at this point in my career I still think that having something be easy to use is an incredible strength.

Lets take the example of a manual car compared to an automatic. When you’re driving normally the manual gear changes won’t be a problem. After all, you’ve been using the car for a while and are practiced with it, so it’s basically second nature at this point. What is a problem is when things start going wrong. When you need to drive fast or take evasive action that involves movement and not just breaking, at that point then you’re far more likely to forget something simple. Complexity only really becomes a problem when you’re under stress and in a pinch, because that’s when you’re far more likely to blank out on something basic and critical.

The point of all this is that WordPress is surprisingly useful as an E-Commerce platform since it can take care of making the site responsive. It can insure that all the elements scroll properly, that the backgrounds are placed and scroll correctly on different devices and can even notify when your text could be improved for better readability.

MacType 2016

Posted on Leave a comment

After a surprising three year wait, a new version of MacType was released. You can grab the latest version here. Now Windows 10 is officially supported and among other features there is re-enabled DirectWrite support.

Direct Write is a function of DirectX that lets you easily write text to a 3d accelerated surface. Previously this was something that third party text extensions couldn’t affect, since it was a different pathway from the normal Windows GDI text writing method. This means that in theory, all applications should now be covered, including Chrome running with hardware rendering as well as the latest versions of Microsoft Word.

To show the effect of the iOS settings in Windows 10, here is the before..

Before2016_v2

and the after…

After2016_v2

Text does seem noticeably easier to read with this new version, so I’m definitely impressed. By the way, for comparison purposes, here’s the after picture from the 2013 version of MacType.

After

It’s hard to notice the difference, but there is more sub-pixel hinting with the new version.

TeraCopy and XCopy

Posted on Leave a comment

One of the first applications that many people install on their freshly built computer, and which the rest have never heard of, is TeraCopy. TeraCopy can replace the standard Windows file copying action with itself, doing the same operations not only more efficiently but also with a few added features that Windows could have used for a while now.

Teracopy

Among other helpful features, TeraCopy uses its own buffers to handle the intermediate step while copying files, and is somewhat more aggressive with them than Windows is by default. This means that on systems that are under some load or slow to respond you will get faster copying speeds. For example if the remote drive is on a shared network drive that is being accessed by other users, or on a USB.

TeraCopyLarge

Secondly it does not instantly grab focus of Explorer windows after the copy has started like Windows will do when operating over slow links. This might seem incidental, but if you are dealing with slow network copies as part of your daily routine, it can rapidly become another irritation when windows jump forward as you are attempting to focus on something.

TeraCopyMenu

Thirdly and perhaps most importantly, TeraCopy is better equipped to handle dealing with drives that are becoming less reliable. With an option to always test a file after it has finished copying by reading it back and comparing it against the source. When a drive begins to fail, it is almost always by corrupting data as it is being written and almost never during the process of reading back good data. If you are writing a backup, writing to a remote location or writing a file that is simply important, it might help to have a built-in extra check so you don’t have to remember to manually verify the copied file.

On the subject of advanced copying technology, one additional tool that comes with Windows that many people are unaware of is xcopy. In functionality it’s very similar to TeraCopy in that it allows you to safely copy large amounts of files very quickly by making heavy use of system memory, though unlike TeraCopy it is not a graphical tool and instead it’s something you trigger with power shell. Generally as follows.

Xcopy

Xcopy is very useful for making a system backup. In fact this is largely what it was originally designed for, since without the /E and /K flags it won’t build the entire directory structure and any files it writes will automatically be set to read only permissions so they can’t be modified.

One additional thing about xcopy that it’s important to be aware of is that you need to specify the entire path in both the source and the target. It does support using wildcards like ‘*’ to indicate every directory and file inside a directory, but it helps to have the target and source specified completely, including the slash at the end for targeting a directory to be copied into. I’ve had strange behavior by failing to do this, so I recommend erring on the side of caution.

Incidentally the help flag for getting xcopy’s manual page is ‘/?’.

Windows Update Fixit

Posted on Leave a comment

Despite the fact that we’re making a tool who’s purpose is to suppress a common Windows behavior with Windows Update, I’ve always still felt a bit hopeful that all of this messiness will blow over and Microsoft will modify Windows to just do what people want. After all, computers are so generally central to people’s lives right now that having them become more annoying to use is a net negative for everyone. Even a small change that makes Windows even slightly more annoying, if a user has to tolerate it every day at work and then again at home when they get back to relax can rapidly reach insane levels of pain. Not to mention that we should reasonably expect our tools to do their jobs without trying to mess with us.

So it’s with mixed feelings that I’ve been following the news about Microsoft’s recent changes to how Windows Update works for Windows 7, 8.1 and 10. Firstly, by now you’ll all have heard that there have been issues with Webcams for Windows 10. Apparently this is because Microsoft is insisting that everyone has to use their open-source but still Microsoft based codec to talk to webcams, apparently this is supposed to make them more reliable when multiple streams are accessing the same webcam. Due to this change, many previous webcams are no longer working as before, either not to the quality they were previously or apparently in some cases not at all. This appears to be due to the fact that Microsoft’s codec will, at 1080p quality, take up about 250MB/s of bandwidth. Compared to the very common codec H.264 that uses something in the range of 5MB for the same level of quality. Of course that only works if your webcam supports USB 3, not a guarantee if it only previously expected to reasonably send at 5MB/s maximum. Of course it’s been more than 10 days since the anniversary update, so if this is a problem that you’ve only just discovered you have, you’d be out of luck if you updated when you had the chance.

Additionally Windows 7 and Windows 8.1 will be switching to rolled up updates. So instead of downloading individual updates, you’ll be downloading a massive pack of changes all at once. This could be a problem for corporations that generally expect that their IT departments will be able to test individual updates. Though given that Microsoft have been getting more and more vague these last few years about what their updates actually contain, it’s not that much of a surprise that they are choosing to go in this direction.

The only good point in all of this for us is that we still make software that can suppress the Windows Update action in Windows 10, overriding the computer and letting the user have complete control of the process with a single button click. You can hold off updates as long as you want and you don’t have to delete system files or mess with the registry to do it.

You can pick up our version of Update Controller here.

Oh and why the post name? Apparently this is a search term that has been screaming up the Google rankings since Microsoft made their recent Windows Update changes. People seem to really want to fix Windows Update so it stops messing with them.

Windows Legacy Edition

Posted on Leave a comment

This is an interesting version of Windows you’d normally only run into if you happened to work at a large company that had a volume license for it from Microsoft. Windows Legacy edition was a version of XP intended for Thin PCs, for example if you wanted the users to sit at a normal desktop, but run desktop software situated on a sever elsewhere in the building. From back when stuff like this actually seemed like a good idea.

There are a number of reasons why it’s not a good idea. First among them being that anyone who’s had the unfortunate experience of using a Citrix instance will attest to the fact that there is always a noticeable lag, even over a gigabit connection. Additionally the system never quite seems to be as responsive and useful as it’s specs would imply, even accounting for the issues caused by lagging inputs that occasionally skip.

Also, while it’s true that you no longer have to provide support for many small desktops; you are now required to support a larger and complex server that represents a single point of failure. If it goes down, so does the productivity of a department.

So Windows Legacy never quite took off like Microsoft probably hoped it would. Still I dug up some old screenshots of it in action, since if you have access to a license, it might be useful.

Windows1

From the start, it looks fairly different from a normal installation of Windows XP, and you can tell that the basics are there, but things are missing. The license agreement is different too, as it refers to a specific volume license between you and Microsoft. It’s actually very refreshing and to the point compared to most of End User License Agreements you see floating around.

Windows3

You can see that Microsoft considered that people would want to automate installing this version. It’s possible to make Windows XP install itself in unattended mode as well, but with the normal version this option isn’t as obvious and requires far more fiddling to realize it’s there.

Windows4

By default very little is installed, in fact even the Full Configuration is missing some .dll files and other features that Windows Software generally assumes will be present on every system. However note that the Minimum Configuration only installs Remote Desktop, not even IE.

Windows5

By default there is no boot to desktop option, every user is required to log in like in server editions.

Windows6

The default desktop is empty, but refreshing. I appreciate that there’s no immediate attempt to up-sell the user on something, probably nostalgia for simpler times.

Windows7

Compared to Windows 7 that can easily chew through 2GB just idling after being used, 100MB isn’t too bad after installation. At least not by modern standards, though the programmers of Windows 95 would probably laugh at that statement. Mind you it’s not that impressive because this is actually very close to what Windows XP normally uses after installation, however there does appear to be a slower uptick as the system continues to be used.

Assuming that you have the licensing agreement to legally use this, and a piece of software that doesn’t require some fundamental driver that is normally expected to come standard on XP, this would probably make a pretty good headless system, like a server on an internal network, or an embedded machine. Though it won’t work on a Reasberry PI due to being x86 only, it would work on some of the competing boards being released.

Unfortunately I’m told that due to being the equivalent of SP2 and having completely outdated security certificates, you won’t even be able to access Google with the included browser. Some patient tweaking would probably be needed to get some use out of it.

Still, many people do find it more comfortable to work on Windows system than a Linux one, even for embedded projects. Especially as long as Microsoft’s Internet of Things only supports a small subset of embedded hardware and doesn’t operate like a miniature Windows system.

Testing Windows 10 “Tweaks”

Posted on Leave a comment

I know there are plenty of random tweaks floating around for Windows 10 and I thought it would be interesting to benchmark a few of them with 3dMark05 on one of the older machines I have lying around.

Now almost all of these adjustments are generally pretty situational, so I didn’t really expect to see any performance improvements. For example DPC Enhancer is supposed to be for buggy drivers and while I know that it does change the power settings for graphics cards on PCs with multiple cards, I know nothing else about how it works, it’s entirely a black box. So while I’ve found it to be useful in making my gaming machine noticeably more responsive on the desktop, it’s not really a performance tweak.

Still, the results are interesting, first, the numbers.

ChartGo

Each test was run six times, and the final result was the average of all the scores. I rebooted between changes.

It’s interesting that disabling paging resulted in an improvement, but probably not that surprising. Normally it’s the sort of change you make to prevent the computer starting to “stutter” after extended usage. Paging is also caused by IO and some people don’t want their programs to be pushed out for file accesses. It’s also worth noting that on Windows 10, disabling paging also disables memory compression. Despite what the chart says, this change was only 1% or so. It’s not an effective performance tweak.

DPC Enhancer was also useful, which was somewhat unexpected given the test machine. As mentioned previously I always thought of it as more utilitarian. Among other things the test machine doesn’t have the kind of hardware that would benefit from this tool, being a fairly old machine with a simple configuration.

Timer Resolution was the first surprise. This has been shown to have some performance boosts for other applications and configurations, so this is one tool that I did somewhat expect to see a benefit from. Actually this probably isn’t too surprising either, since the laptop is old enough, and the tests difficult enough that the additional context switching is an overall detriment. If the processor was more powerful, such that each frame spent more time idling while waiting for a context switch after finishing some processing, this would probably be an improvement. The real surprise is that the timer isn’t set to maximum system wide when 3DMark is running. For example Google Chrome used to set Timer Resolution to maximum when running JavaScript, but doesn’t do this in newer versions because the performance increase wasn’t worth the effects on battery life.

Dynamic Ticks was also a surprise, while I did expect that it could make the computer slightly more responsive to input, I didn’t expect that it would actually improve the benchmarks. Generally when a test is running you don’t expect the processor to be going at anything less than the maximum anyway.

In the end, these are situational tweaks for specific issues or for specific applications that would benefit from having them. Not for performance. However, seeing the effects they have on straight performance is still worthwhile since we can know if they’re actively detrimental or not in other cases.

Disabling Dynamic Ticks

Posted on Leave a comment

Here’s another post about disabling a Windows feature. The first question, why would you want to? Dynamic Ticks are a feature that lets windows stop the system timer when nothing is happening in order to conserve power. This is nice for portable and battery systems but can be a problem for desktops, especially since the tickless mode has been known to cause strange issues on some systems; especially when gaming or engaged in other media related tasks.

Fortunately, disabling Dynamic Ticks is a one step process. Open up an instance of Power Shell as an administrator and type in the following…

bcdedit /set disabledynamictick yes

Then reboot. This setting is permanent until disabled with it’s opposite, simply replace “yes” with “no”. This feature doesn’t cause issues on every system, but it does cause issues on enough machines that it’s worth keeping the fix in mind.

 

 

Turning Off Windows Defender

Posted on Leave a comment

Windows defender can’t be disabled the normal way, that is from the Settings app, only temporarily postponed. Now, firstly you would ask why someone would want to make their computer less secure? Well there’s a few reasons.

  • Windows Defender transmits anything that matches its heuristics back to Microsoft, even if you specify that it’s not a threat. As a software developer, you don’t want to risk having new software you’re developing be beamed to the competition over the internet.
  • Windows Defender runs ALL the time. Even when you’re not actually connected to the internet or downloading anything. Anti-virus software is somewhat of a resource drain and there’s no reason to leave it running if there’s no appreciable risk to your machine.
  • It doesn’t really help. Of the possible threats to your computer’s security, Windows Defender is only going to be effective against a fairly small subset. Providing you avoid installing applications from untrusted sources and insure that your browser and firewall are secure then you will be as safe as is reasonable.

The idea behind Windows Defender is the same as behind the automatic updates, if people don’t know enough to disable it, it can stop viruses from spreading between computer systems. To Microsoft it’s not an issue if these computers are way slower, because the people running them don’t know how fast they should be.

On a side note I’ve always detested the idea that buying new hardware is a solution to performance issues. You can solve anything by just throwing money at it. Good design is a solution, better hardware is giving up. Of course you need your software to run on something, but “spend more money” should never be the first solution.

For the issue at hand, we’re going to turn off Windows Defender with something called gpedit. Short for group policy editor. This is normally used by network administrators, generally people in charge of machines belonging to businesses or government offices, to set the company policies that apply to various company owned machines. Things like not allowing any USB storage to be connected or enforcing that no sound can be played from any machine. Generally the group policies are applied network wide onto all machines that are connected to a specific network and answer to a certain type. For smaller networks however, the gpedit tool lets us directly modify the policies that apply to one machine at a time.

Search for it as follows.

gpedit1

You’ll want “Computer Configuration” > “Administrative Templates” > “Windows Components” > “Windows Defender”. In the Windows Defender tab, you want to double click the option marked “Turn off Windows Defender”.

gpedit2

You will get a screen that looks something like this. Remember that “Enabled” is what disables defender. You are activating a policy, not disabling a service.

gpedit3

Insure that when you start up gpedit, it starts as an Administrator.

It is somewhat annoying that Microsoft feels so much ownership over the people who choose to install their software that Microsoft feels it has the right to dictate what settings the users may or may not use. While you could argue that it prevents people who are less skilled with computers from doing accidental damage, an argument that might be somewhat understandable; it still doesn’t explain why there’s no option to change this setting in an actual menu.