Saturday, September 6, 2014

Schedule-ALL (PRO) - A Unique way to schedule you connections!

As you probably know, I am a software engineer at heart. After a looooooog time I took to designing and coding. This time on Android. Last weekend I sat down and started to dabble with Java programming (which I have never done in my life, because I was a core Microsoft guy) and Android app development.

What started off as an Android learning session turned into a full-fledged app! 

For a long time, I have had an idea of having an app to automate all my data connections such as WiFi, 2G/3G, Bluetooth and Sync based on my usage. I needed this app to manage my connections and my Sync so that its optimized based on my usage.  I searched on Google play store and elsewhere for something which matched my requirement, I found quite a few and tried them. Many of them were good, some of them were crappy, some were too complex and some were way too expensive for what I needed.

So I thought about creating a simple app which would automate WiFi, 2G/3G, Bluetooth and Sync based on my need. That idea gave birth to this app called Schedule-ALL.

You can buy this app here at Google Play Store

UPDATE: After sharing this app with family and friends - I had one consistent question from most of them. WHY ON EARTH WOULD I NEED THIS APP IN THE FIRST PLACE??
I thought I had answered that in my FAQs section, but apparently that's not enough. So let me try it one more time
About Data Connections and Sync In Your Phone
Firstly - Depending on the model of your phone, it may have upto 4 types of data connections

  • WiFi
  • 2G/3G
  • Bluetooth
  • NFC (Near Field Communication)
Most have have at least the first 3 types above. Important thing to know about these data connections is that they all generate radio waves when they are on. So when something "generating" something, it needs energy. In your phone that source of energy is the battery. So if your phone has any of these connections ON then it means your phone is expending battery to just by keeping these on, whether you use them or not. 

Secondly - There is something called a Sync service which runs in the background. This service is used by your phone to sync things like Emails, Contacts updates, Newsfeeds, RSS feeds, Regular photo uploads, Google+ updates, Facebook Timeline updates and so on. So Sync takes up a lot of data. Since Sync requires either WiFI or 2g/3g it also takes up your battery.

NOTE - Sync is not used to send/receive Whatsapps, hangouts, Facebook or other notifications . So putting Sync off doesn't affect these messengers.

Most manufacturers, by default, keep WiFi, 2/3G, NFC and Sync to be always on. There are 2 adverse effects of this.

  1. Your battery drains unnecessarily
  2. Your phone consumes a lot of data in the background without your knowledge

What this app does is the following

  1. Lets you schedule which connections (WiFi, 2g/3g and Bluetooth) is ON at what time of the day. Let's say, if you are in office from 9 AM to 6 PM, then you dont need the WiFi to be ON at that time. But you would need your 2g/3g Data and Bluetooth (for phone call) to be ON
  2. Lets you schedule at what intervals your sync service runs. Lets say you are OK to check your mails every 2 hours, then can schedule Sync to run every 2 hours
  3. Apart from this it lets you choose WIFi as a priority data connection over 2G/3G (by using those check boxes). This ensures you are not unnecessarily on 2g/3g data connection when you can as well be on WiFi. This reduces your 2g/3g data consumption.
Benefits of this kind of scheduling is 2 folds
  1. Only the RIGHT data connection (2g/3g or WiFI) is kept ON - There by reducing battery drain
  2. Sync is not always ON - Reducing battery drain and reducing 2g/3g data usage when on 2G/3G network

App is based on the following Design Philosophy
  • It should be simple and intuitive to use
  • It should not take you through too many screens
  • It should let you schedule connections toggles and sync toggles in less that 10 seconds
You try it and see for yourself I met my own design philosophy

I will now let you enjoy some of the screen shots and the App FAQs

1. What does the app do?
App allows you to perform following actions

a. Manually Toggle WiFi, Bluetooth, Data and NFC connections.

b. Manually start Sycn and set the duration for the sync to run.

c. Schedule Sync to start every X minutes and run for Y minutes once it has started.

d. Schedule Wifi, Bluetooth, Data and Sync to start and stop at specific time of the day everyday.

e. Cancel All the previous schedules (so you can start a fresh).

2. Once I have set the schedules, how long will these schedules run?
All schedules will run as long as you don’t cancel your schedules (Using 'Cancel All Schedules' button) or un-install the app. The app will re-schedule all your previously set schedules on reboot. So you dont need to worry about setting them again. Schedules will also be intact even if you update the app (without un-installing) from the play store.

3. Will the app drain my battery?
No, app itself is not in the memory after you have set your schedules. App uses Android's AlarmManager APIs to delegate the schedules to Android OS. It behaves in exactly the same way your android alarm clock does, except everything is in the background, so you wont even notice it.
4. Why would I need this app?
If, like me, you have set times when you want Data/Bluetooth/WiFi/Sync to be enabled or disabled everyday and you dont want to manually go into settings to do all this, this app will do it for you. Ensuring right connections are enabled at the right time. Controlling sync will help you to not only ease your life but it will also save your device's battery life.

My Settings are:

Sync: Run every 2 hours for 5 mins (this is more than enough for downloading emails over 3G or Wifi. On 2G you may increase the duration to run to maybe 10 mins)

Wifi: Start time-17:00 AND Stop time-10:00 (this is the time I am at home, I start wifi an hour earlier than I reach home)

Data: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)

Bluetooth: Start time-8:00 AND Stop time-18:00 (this is the time when I am out)

5. Why does manual toggle of NFC take me to settings? and why cant I schedule NFC?
Answer to first question: Google Android APIs doesnt provide any direct control over NFC connections to programatically stop or start it. Apps can only use the NFC connection, if it has alreayd been started. I have given the next best option to let the user go to the system settings screen and toggle it manually.

Answer to second question: Since Android APIs do not allow to manually start/stop NFC, its pointless to provide a scheduling mechnism, unfortunately! :-(

6. Will Schedule-ALL help me save my battery?
Although I dont explicitly claim that Schedule-ALL will save battery juice, it has been proven that using connections that you only need and stopping all other connections does improve battery life. Most battery saver apps use controlling connections as one of the foremost weapon to protect battery juice from draining. Also Sycn is huge drainer of battery and it uses a lot of data if its on continuously. So yes, it will definitely help your device battery perform better also saving you data usage.
7. How to use settings 'Stop Wifi only if Wifi is Disconnected', 'Start Data Only if Wifi is NOT Connected' and 'Stop Data Only if Wifi Is Connected' ?

Stop Wifi only if Wifi is Disconnected - If you have scheduled your wifi to be stopped at a certain time say at 1:00PM everyday if you check this box then the app will check if you are still connected to any WiFi network. If you are connected to any Wifi Network then it will not disable the WiFi and rechedule itself to check back to see if the Wifi can be disconnected in 30 minutes.

Start Data Only if Wifi is NOT Connected - This will prevent your scheduled data from starting if you are connected to WiFi.

Stop Data Only if Wifi is Connected - This will start the data only if you are disconnected from WiFi.

There 2 Purpose these settings server

1. They ensure that Data (2G/3G) is not enabled unnecessarily if you are already connected to WiFi.

2. They ensure that you always connected to one network or the other.

These settings only affect your scheduled connection controls. As usual, you can always override these with manual settings.
8. What is 'Sync ONLY when connected to WiFi?

If you have scheduled your sync to start at specific times, then checking this setting will start the sync only if the device is connected to WiFi network. If you are n 2G or 3G then the Sync will not start. This doesn’t affect the manual Sync.

Wednesday, October 24, 2012

Dussehra–With My First Love

Cameras, that is! What did you think! Ever since I was a boy, I was fascinated with cameras.

I remember when I first held a camera, I was just into my teens, it was a black and white fixed lens camera (it only took black and white film) . It belonged to my elder brother, who had bought it from his pocket money. But since he was studying out of town, the camera fell into my hand. I got hooked on to it immediately. I realized that for the first time in my life I had a hobby. I had begun to enjoy it tremendously and was very sad when I had to let it go because my dad did not have enough money to develop the film or to buy one. But I was a completely different person as long as I had it.
I knew then that, if ever I had a hobby; photography would be the one and nothing else.
When I went to college, my pocket money was enough for me to buy a new camera for myself. I bought a Konica HotShot flat camera. This camera took a rather strange 110 film cartridge. It had dual lens, one for wide angle and another for telephoto. I used it throughout my 5 years in college (bachelor and masters) until it stopped working. It was my most precious possession in my college days.
Once out of college, I got busy with my job and family and I had very little time to pursue my photography. In 1999, I went to UK on an assignment through my company. While in the UK I found I had a lot of time at my disposal, so I decided to rekindle my first love affair. That’s when I bought my first SLR – this was year 2000. The Camera was EOS-300. I hadn’t touched a camera for 6 years and suddenly finding a huge SLR in my hand was overwhelming. I figured quickly that I had to learn a lot, things I never paid attention to earlier. I still have that camera and is still in a great condition. Later I upgraded to Canon EOS-30 in 2002 - a beautiful piece of equipment.
From then on, I was always in touch with my hobby off and on. Up until 2007 however, it hadn’t yet turned into my passion. In 2007 I bought my first DSLR, the Olympus Evolt E-330 and that’s when my hobby turned into a passion.

Now coming back to Dussehra. Let me give you a background of what Dussehra is – Its a Hindu festival celebrated on the tenth day of the Hindu autumn lunar month. The day marks the victory of Goddess Durga over such demons as Mahishasur. It is a day when devotees worship Goddess Shakti. Shakti represents strength, ability and courage. This day also celebrates the victory of Lord Rama over the demon king Ravana. More Info here.

It marks the beginning of harvest season. And every household in rural India perform prayer (pooja) to sanctify their tools and items used in harvesting. In urban India people perform pooja to sanctify the tools that they use in everyday life such as vehicles and instruments of daily use.

This year, for the first time, I performed pooja of my photography instruments. It brought out the celebratory mood I am always in whenever I am with my first love i.e. my camera!! :-)

Hope my photography improves a bit!

Here are some of the pics

Dussehra (1 of 2) All my stuff in one place :-)

Dussehra (2 of 2) The top view..
Hyosung GT 650R My Second Love  :-)
My Hyosung GT 650R

Thanks and God Bless…



Sunday, October 21, 2012

Celebrating Birthday! (with OM-D and RC flashes)

On 20th Oct my son, Advaya, turned 9. This time I had the most powerful micro 4/3 gear to shoot his birthday. I was contemplating various ways to shoot this event.
Initially I thought I would shoot only with my prime 45 f/1.8 on OM-D. But while doing the tests I found that I don't have enough space to move back and forth to get the whole group. So I decide that I will shoot most of it with 12-50 and then switch over to 45mm when kids settle down. This idea worked like a charm, as you will see.
My next issue was the lighting. Since the party was going to be indoors, with tungsten light, I knew I would have limited light. Although this is sufficient for OM-D + 45 1.8, its definitely not enough for 12-50.
So an idea stuck me. I have never really shot any event with RC flashes. I have both FL-36R and FL-50R. But I have always used them on-camera with E-5. And since I have already decided that I would shoot this event only with OM-D, I had to use flashes in RC mode. both FL-36R and 50R are too bulky on OM-D.
I was quite apprehensiv
e about my ability to set them up correctly.
So began my trial-and-error, make-shift method
  • Initially I thought 1 FL-50R should be enough. Hall in which the party was going to be was not large (10 x 15 feet). Generally on-camera flash would cover this space nicely, but in RC mode I found that lighting was uneven in certain angles.
  • Since the kids would be moving around, I quickly understood that one flash in RC mode at a fixed location will not be enough.
  • So I decided to use 2 RC flashes to cover entire area and rely on the bounce to provide over all illumination of the entire area from any angle.
  • I setup my flashes at either side of the room at an height of around 7ft and used the Gary Fong’s Lightsphere diffuser on each of them. And directed them towards the ceiling to get maximum illumination through bounce. Gary Fong’s Lightsphere are by far one of the best diffusers I have seen. They are absolutely brilliant in providing soft and even illumination
  • I set the flashes in 2 groups in RC mode. I set FL-50R in group A and FL-36R in group B.
  • I then used group A in Manual @ 1/10 of the power and group B in Manual @ 1/4 of the power.
  • I used ISO between 200 to 800 to gain sensitivity. I didn't want to increase the power on the flashes because I wanted fast recycle as kids were moving around.
  • Once the setup was complete, Kids began to arrive and shooting started!
  • I found that this setup provided pretty good overall illumination from all angles. Wherever the pics were underexposed, I corrected them in Lightroom. And OM-D’s dynamic range is so fantastic that I can get details from pics which are underexposed by upto 2.5 stops!
Even for a novice like me, I found that setting up Olympus gear in RC mode is breeze!
So my final gear OM-D, 12-50, 45 1.8, FL-36R and FL-50R (in RC mode. FL-LM2 to trigger the RC flashes)

Another thing is the ease with which you can change the flash intensity! Absolutely brilliant!

Monkey business! :-) With friends!
1/60s . f/4.1 . ISO 200 . 16 mm (12-50)
For the pic! More friends!
1/60s . f/5.1 . ISO 500 . 25 mm (12-50)
Crazy guys! Blast with the friend!
1/60s . f/5.0 . ISO 500 . 24 mm (12-50
Shooting the shooter...! :-) Shooting the shooter!
1/60s . f/3.5 . ISO 400 . 12 mm
Performers and Audience Dance time!
1/60s . f/3.5 . ISO 400 . 12 mm
Michael Jackson! +1/60s . f/3.6 . ISO 400 . 13 mm
The group! Enjoying!

1/60s . f/4.4 . ISO 400 . 19 mm
Makeshift Piata Playing with Pinata!
1/60s . f/3.9 . ISO 400 . 15 mm
Always a monkey! Monkey business!
1/80s . f/1.8 . ISO 200 . 45 mm
More Michael Jackson! For pics where I didn’t use flash, I set the white balance to custom. For flash I used the Auto WB.
+1/100s . f/1.8 . ISO 4000 . 45 mm (no flash)
Freeze dance time! Freeze dance

1/80s . f/1.8 . ISO 200 . 45 mm
Falling in Line! Standing in line for the the game!

1/80s . f/1.8 . ISO 200 . 45 mm
Some symemetry...finaly! Making them sway!
1/80s . f/1.8 . ISO 200 . 45 mm
Tummy full! Tummy is full!

1/100s . f/1.8 . ISO 6400 . 45 mm (no flash)
I am 9! Yes, I am 9!!

1/100s . f/1.8 . ISO 3200 . 45 mm (no flash)
U r 9 babay! U R 9 Baby!
1/60s . f/5.5 . ISO 400 . 31 mm
Is it that strange?! Yes, thats the cake! :-)

This was a bit underexposed, corrected in Lightroom.

1/60s . f/4.7 . ISO 400 . 21 mm
Finally cutting it! Time to cut it baby!! :-)

1/60s . f/3.5 . ISO 400 . 12 mm
Birthday bumps!! Time for birthday bumps! :-)

1/60s . f/3.5 . ISO 400 . 12 mm
My babyyyy! :-) With daddy!

1/60s . f/4.7 . ISO 400 . 21 mm
Mom and Son Momma’s boy! :-)

1/60s . f/4.5 . ISO 400 . 19 mm
I won!! Yes! I am a big boy now!

1/100s . f/1.8 . ISO 5000 . 45 mm (no flash)
Shooting with prime is joy I have never felt before!
I hope you like my blog as much as I loved shooting it!
Its tough to put kids in a small space and shoot them, but with little bit of patience, it can be done :-)
More pics here

Monday, October 15, 2012

My Observations in the East

I recently went on a vacation to Singapore and Malaysia. One of my pass times is to observe people. In this trip, I found I was observing the various devices that people use for photography and also different mannerisms of the native people (both oriental and Indian origin)and tourists . So here goes

Photography Related Observations

  1. Oriental women use following devices for photography (in that order)
    • Cell phone/iPad (Yes! iPad for photography!)
    • Point and Shoot
    • Interchangeable Lens System (Sony NEX Series and Olympus PEN Series)
  2. Oriental men prefer (in that order)
    • Point and Shoot
    • DSLR (Mostly Nikon or Canon, saw a couple of Pentax and Sony. No Olympus DSLR)
    • Interchangeable Lens System (Sony NEX, Olympus OM-D and PEN. Yes! OM-D is more popular, in m view, than PEN with them)
  3. Western tourist prefer Only point and shoot. I saw only a couple of them using DSLRs. No Interchangeable Lens system
  4. Indian men tourists mostly prefer DSLR (with popup flash on! ;-))
  5. India women tourists prefer cell phone or point and shoot
  6. Indians who have settled in Malaysia and Singapore do not take photographs :-)
  7. I found that people don't prefer using tripod. Both in KL and in Singapore, during my night shoots, I found only couple of tripods apart from mine.

Other observations are

  1. Oriental native women chat/text while walking. Not sure how they can see the road, but they manage not to bump into people.
  2. Oriental native men prefer playing games on their cell phones
  3. All of them have latest smartphones. Samsung and HTC are the preferred brands. iPhones are few and far in between.
  4. People of Indian origin who have settled there prefer to talk over phones more than oriental natives.
  5. Indians do not prefer oriental restaurants. Oriental people (mostly natives) seems to love Indian food.
  6. Westerners prefer china town eateries to Indian joints.