I’ve been quite intrigued by the recent public releases of Dall-E followed by Stable Diffusion which allow you to generate images from simple text prompts, & had been trying them out on the free online platforms. The main limitation of these is that you are limited to a certain quota for free, and to really try an opensource tool like Stable Diffusion locally, you need to pretty beefy system with a high end GPU.
All that changed when I came across a project on GitHub that lets you run Stable Diffusion on the CPU thanks to Intel’s OpenVINO framework. I promptly took it for a spin on my 4 year old laptop with an Intel quad core 8th gen CPU. The instructions are provided on the GitHub project itself as expected. If you are using Windows like me, you can do the following:
Install Anaconda which simplifies the Python setup.
Create a new environment in Anaconda for the project.
Open the terminal, create a directory for the project & clone the GitHub repository for the project using the git clone https://github.com/bes-dev/stable_diffusion.openvino.git command with the project web URL.
Follow the installation instructions on the project page:
Install the project dependencies using pip install -r requirements.txt
Enable Developer Mode in Windows settings which allows the model to be downloaded on first run.
If you plan to use the web interface also install streamlit drawable canvas using pip install streamlit-drawable-canvas, as this module dependency seemed to be missing in the documentation & gave me errors on trying to run the web demo.
Run the script as per instructions replacing the prompt if you want (the developer seems to be a GoT/Emilia Clarke fan) – python demo.py --prompt "Street-art painting of Emilia Clarke in style of Banksy, photorealism"
On my laptop it takes about 8-10 min to generate an image, though a more powerful CPU with more RAM should be able to cut it down to 3-4 min as mentioned in the project page benchmarks. Either way, it is a worthwhile tradeoff to be able to run it locally.
Here are a couple of results from the prompts I ran on my laptop (I chose a couple of the timeless beauties to see what Stable Diffusion has to offer):
Street-art painting of Elizabeth Taylor in style of Banksy, photorealismStreet-art painting of Grace Kelly in style of Banksy, photorealism
I had never used Android as my exclusive daily driver, and my last proper Android phone usage on the Mi 4 was in parallel with my iPhone 5s around 6-7 years ago. A lot has changed in this time, and a lot has also remained the same especially when it comes to the customizations possible.
Here’s a quick rundown of the key new features I’ve recently (re)discovered on this side of the fence.
Ad blocking with Blokada
Ad blocking apps are of course nothing new on the iOS side, but are largely limited to browsers & webviews at best. This is where Blokada for Android comes in. It sets up a local VPN on the device and does local DNS filtering a la Pi-hole to block ads across apps. There is going to be a slight performance & battery life penalty, but you get ad blocking on the go. You can sideload the full featured version, or just get the Slim version from the Play store. It’s also available for Android TV, in case you do not want to use Pi-hole.
You can get similar functionality on the iPhone side of things, but need to use cloud services to get similar features which add on subscription costs & connection latency.
SMS Organizer
Custom launchers, dialers & SMS apps have been around from the very beginning on the Android side and have also been one of the biggest attractions of the platform. That said, the way we use SMS has changed a lot and it has become more of a platform to get transaction notifications, esp. for OTPs. This of course means that you have to be really careful in which custom apps you choose as a rogue app could easily siphon off your identity or bank balance.
That said, the SMS Organizer app from Microsoft Garage is a really smart app that makes life much easier and feels like a breath of fresh air after having used the iPhone Messages app for the last several years.
Transaction messages don’t just get a separate tab, but the notifications are also designed to highlight the key portion. Promotional & personal messages get their own tab as well. Then there’s the tab for reminders, finance & offers – each of which intelligently parse the messages and put the key information in a usable or actionable form. So, you can glance your bank, credit card, EPF, PPF & other such accounts including a transaction list (not completely accurate at times due to duplicate messages), get a reminder of your upcoming bills & travel plans and also surface the coupon codes that get sent in umpteen promo messages.
Then there’s the simple but great QoL improvement due to the ability to mark all messages as read and delete old OTP messages after a certain period. It also backs up the messages to Google Drive in case you want to restore later.
I’ve also been using the Microsoft Launcher which neatly integrates with Outlook and makes it easier to glance upcoming work meetings.
Windows integration
Yet another point around a Microsoft feature for Google’s OS. When I had switched to iPhones in 2014, it was from a Lumia 720 and Microsoft was still making Windows Phones at that time. Now, Microsoft seems to have embraced mobile devices & the cloud and their apps have features to further this vision. The Microsoft Phone Companion app on Windows makes it easy to connect to any Android phone, and in my case, the Samsung Galaxy S20FE has the required apps pre-installed.
Microsoft’s Phone Companion app in action along with the Swiggy app running from the mobile on the laptop
While it is not quite the kind of integration between macOS & iOS devices, there are many ways this is more fully featured as you can not just control basic settings like volume but also access your phone’s notifications, messages, photos & apps right from a Windows machine. This makes it quite easy to stay tuned to a single device, unless you are a Mac user, or are using a work laptop where this feature is restricted.
Working on large screens
This is a perk of Samsung devices with DeX support where you can connect to a larger screen like a monitor or TV (USB to HDMI dongle required) or to a PC (wirelessly or through a USB cable), and then get a desktop like experience.
I got a USB-C to HDMI adapter which also has a USB A port & USB C pass through charging, which allows me to connect a key + mouse combo along with the monitor to access the DeX mode. This mainly comes in handy when you need a larger screen to edit audio/video/images taken on the phone, or just want a larger screen to view content.
Also a quick mention of the split screen & hover apps feature on Samsung devices that has been supported since the earliest Galaxy Note devices, and has been available on iPads for a while but not on iPhones.
Automation
iOS devices have made great strides on this front with the Shortcuts app which started off as Workflow before being acquired by Apple. This largely pales when one compares to Android veterans like Tasker & Llama that have been around since the early days. Services like IFTTT & Zapier can also do more on Android than iOS. Then, there are the Shortcuts contemporaries like Google Assistant & Bixby routines which provide an easier interface.
Most of my automations deal with silencing & unsilencing the phone based on different conditions like location & time of the day. This is where the iPhone’s hardware mute switch gets in the way as automations can’t alter its state.
I’ve been using Pi-hole running on a Raspberry Pi 3B+ for the past 2 1/2 years, and it has really spoilt me to the extent that I have forgotten what ads on web pages and mobile apps look like (the limited travel in the last couple of years has also helped). It’s pretty effective in getting rid of the pop-up mobile ads and the in page banner ads on all devices connected to the wifi.
The setup process is quite simple if you have your own router or at least change the DNS server on the home router:
First off, get hold of a Raspberry Pi (even the model Zero is powerful enough for the Pi-hole), and the necessary peripherals like a case, SD card, charger & LAN cable. There are many readymade kits with the OS preinstalled sold online including Amazon, which saves a good deal of time.
Initial setup is easier with a monitor & keyboard + mouse attached to the Pi. Once this is done you can connect it to your router using a LAN cable and access it through a Telnet client/mobile app like Putty on any of your devices in the home network.
Next, you need to install Pi-hole on the Pi (you can do it during the setup itself), and configure the router to use the Pi as your DNS server. If you are stuck without admin access to your router, then you may need to configure each device to use the Pi separately.
You can also install mobile apps to manage the Raspberry & Pi-hole quite easily through your phone. There are multiple apps available for both Android & iOS.
Once everything is setup, you should have an ad free experience on your devices (not all ads can be blocked of course). I’ve found about 10-15% of the queries on my home network getting blocked, and this includes devices like Android & iPhones, iPads, Android TV, Amazon Echo, Homepods & Windows laptops of course.
WhatsApp has this frustrating limit of 16 MB or about 1-2 min for videos shared from the camera roll on my iPhone. There seems to be a reasonable workaround through the Google photos app wherein you can use the share option on the video of your choice and select the small option which usually compresses most reasonable length videos so that they can be sent in their entirety on Whatsapp.
The quality is of course pretty poor due to the heavy compression but it’s the simplest workaround.
TLDR: If you are using a Xiaomi phone like the Mi 4 or redmi series then:
Go to the Whatsapp site and download and install the apk (you may need to enable third party app installs in settings)
Disable auto updates on the Mi app store to prevent similar issues with other apps
On opening Whatsapp yesterday (13 Jan), I was greeted by a message saying that the version of Whatsapp was obsolete and had expired on that day. Oddly, there was no update available on the Google Play store and I was not on their beta testing program either.
A bit of searching seemed to indicate that this was a MIUI problem, in particular due to their Mi App Store which seemed to be updating apps automatically. There was however no app update on it either.
Finally read on the discussion thread that downloading the apk directly from the Whatsapp site fixed the problem for most and that was exactly what I did. I also went and disabled the Mi app store auto updates to ensure that other apps don’t end up this way.
I have been a Microsoft Office user on the Mac for nearly 3 years now at my workplace and for the last 6-8 months, I have been plagued by repeated password prompts on Outlook 2016 for my Work Exchange account. The sad part is that it just refuses to connect even after putting in the credentials. It seems to happen mostly when connected on the office network and the older Outlook 2011 app does not suffer from this problem. It seems to be a pretty common issue given the number of threads on the Microsoft support forums.
The issue was not present in the initial releases of the Outlook 2016 app and in the last few releases it has started prompting me with the Office 365 sign in page. The issue seems to stem from a conflict with Keychain access on the recent Mac versions, and the only reliable solution I have found is to delete the Exchange related keychain entries as suggested in this thread.
Open up Mac Keychain tool.
Choose “Login”
Remove *ALL* (delete) references to:
“Exchange”
“Microsoft Office Identities Cache 2”
“@<something>” that has a type of “MicrosoftOffice15**”
Update: Received this tweet from the Outlook for Mac Principal Lead Programmer, Alessio, promising a fix in the 15.31 update in Feb 2017. So, keeping my fingers crossed.
Keep an eye out for the next update (15.31) in february. We're validating a change that should take care of this issue.
My 2+ year old iPhone 5s battery had been behaving quite erratically in the last few months and it used to switch off with the battery levels in the 40s. I finally bit the bullet and decided to replace the battery last week on my own after lots of contemplation on whether to go to an Apple authorised service centre or one of the local Heera Panna like outlets. I did a bit of reading and online tutorial watching which made the whole process seem quite simple and decided to go ahead on my own.
Amazon turned out to be quite useful for the DIY crowd with the battery and toolkit available at throwaway prices (Rs 450 & Rs 140 each). The items arrived pretty quickly as well and I started off with the video open for reference.
What the video fails to convey is the really miniscule size of the screws and the fact that each screw is of a slightly different size. Nonetheless, I managed to take things apart.
Taking things apart
Yes, those tiny specks you see in the pink bowl are screws, and they are of slightly different heights, so if you are planning a similar endeavour, lay them out in the right sequence with the protection cover to make life easier when putting things back.
Removing the battery was another ball game altogether. I ended up following the method shown in the embedded video and prising the battery off. This is not as easy as it looks in the video as the tape holding it to the body is quite strong. I ended up pretty much deforming the battery when taking it out.
The old deformed battery next to the new one
Some online tutorials do recommend taking out the tape before removing the battery, which is probably a better option. But you would need to have some tape handy to hold the new battery in place.
Either way, putting things back was even tougher (did I mention the tiny screws?), but I managed to get things done and the phone switched on. Touch ID was the major casualty though the sound from the loudspeakers was also not working at first. I opened up the phone once again as per suggestions online for Touch ID, but to no avail. The loudspeaker fortunately started working after plugging in a headphone and removing it as suggested in this thread.
A week on, the new battery seems to be holding up pretty decently though it’s still not enough to get me through a whole day without a mid-day top up. Still, it’s a lot more reliable than a phone that switches off at 45% charge. Life without Touch ID is also liveable given that there’s no Apple Pay in India or on the 5s.
I faced this issue when working on my HP Pavilion x2 which has a touchscreen. The mouse pointer disappeared when moved over the Chrome but continued to show up in other applications. It seems to be related to the hardware acceleration settings and seems to have been around for quite a while on various Windows devices ranging from the HP Envy to the Surface and affecting both Windows 8.x and 10 (2 years at least going by the Google Group thread).
Anyway, the fix seems to be to disable Hardware Acceleration in the Advanced Settings of Chrome:
Go to Chrome Settings > System and uncheck the following –
Use hardware acceleration when available
Also, hardware acceleration does seem to be buggy on Chrome causing a range of problems related to mouse pointer lags, at least on Intel GPUs going by this post (came up as the top result when searching for “Chrome hardware acceleration“).
That’s a relief, but they really ought to reword it now that we are exclusively on iOS devices:
What it actually does: Erase the iTunes media only, nothing else is erased
For example, if you have a large music library on the iPhone and click on the Erase and Sync button, that music library will instantly vanish, but all of your contacts, photos, apps, customizations, and other media remains untouched on the iPhone. Only the music and iTunes content will disappear. That means the entire large music library will vanish, but nothing else will.
I use the iTunes ratings quite extensively for organizing my music collection with smart playlists. Of late I started seeing some songs I had never rated in my smart playlists and they show up with grey stars in iTunes that can’t be removed from the song directly. On the iPod/iPhone/iPad it’s even worse as they show up as normal ratings making you wonder how your library got messed up.
Turns out that it was apparently due to the album ratings being applied automatically to the songs. In fact, this feature has been around for a while, but one of the recent iTunes updates seems to have created ratings for albums on its own and messed things up. Fret not, as there’s a simple solution – just go to the albums view and remove the album rating. Any songs manually rated in the album don’t get affected of course.