Why you should draft on Google Docs?, like a boss!

I m writing my thesis as a part of competing my master degree. Its over a 100 page document with images at 300 Dpi. In english, there are a lot of pages with each page having an image more than 2MB. This drastically increases the size of your Microsoft Word document, well if you added it with the text you are writing. I do, just to improve the text I write for it.

Some people argue that latex is the best method and it actually helps them in the writing process. If you are that person, this advice is not for you, otherwise lets dive more into the specifics.

Well my final report will be in LaTex, of course, but this is describing the process that I go through while you are writing you document.

Truth is your document is probably being read by Google and the worst aftermath you get suggested with ads all over the internet. There are some easy ways to get through them.

I started out in MS Word, just like I usually used to. I use a Macbook Pro and MS Word 2011 seemed pretty old, so I used 2016. However, it doesn’t matter which word version you use. It will crash if it has to crash. And then in the back of my mind, well 2011 doesn’t crash that much, then why do i have 2016 released in the first place? Lets not go into the software development life cycle, Microsoft tests its latest app for osX version a Yosemite, another el Capitan will come. There will be compatibility problems with it but that shouldn’t stop you from updating. At least, I keep it to the latest software (Usually with some rants of how cool Mavericks was compared to Yosemite, but it has the perks it has to offer)

Why Google Docs?

Well, coming to the primal question, by now Microsoft should have eliminated the button or the menu option called Save. At least kept it just for the sake of the 70’s kid. Who saves the document three times before closing the file.

When you do it with Google Docs, every key stroke is saved! No problem that what you wrote for the last 30 minutes was gone. And you whine about the once in a life time flow of writing a document. I feel, it actually gets better while rewriting it provided i don’t procrastinate.

That is all there is, I mean that is all I would want. Oh, that one cool argument, well you need internet all the time! are you raising that? When is the time when you have written something offline?

Well, Google docs provides offline content creation but i m not sure about its magic there.

You have a ‘define’ and ‘research’ button, just gets results off from Google search engine. Haha, no, please don’t say that… yeah Microsoft has the exact same function in office 2016 Mac, but the problem is you need to get it running all the time without crashing and you should be happy with the Bing search results. I don’t blame or complain, I say that there is too much positive energy that MSFT could possibly absorb. There are probably far too many cool ideas, it not useful until the 70’s kid uses it.Screen Shot 2015-10-13 at 16.44.23

That being said, you have Google search results right next to your document, when you need it.

It saves for every keystroke so you don’t have this high-pitched complaining cry of

I ALL OF LOST IT, LIFE IS SO HARD!

Actually its not hard, things get just as easy as you can easily cry with Do you want to send the error report to MSFT and restart and recover your document! yes, its that easy

  • You don’t, install anything. probably you already use Google Chrome
  • You don’t think if you want to update your software, probably Google Chrome updates and you don’t know it!
  • What if it crashes with the latest version, then you wouldn’t be using Google Chrome

Well, it did restart and recovered, but most of time it was from few hours back and said welcome back, 2 hours ago. “TEARS” right! I’m sure software can be done right, if you are actually paying for it – it should be done right.

Why am I talking about Chrome when I have to talk about Docs?

  1. That is all there is too using Docs, open your browser, goto docs.google.com
  2. Yes, it used to be a part of drive.google.com, i dont know when it changed, but i know it did and it is great!
  3. you probably already have a fake email in Gmail. Use that, or there is a professional email as well, use this.

Not saying Google Docs is the perfect solution, because it changes every day or it limits the size of your document to the size of your Google Drive. Unlike every year by other App companies. But to me, its a good thing, “we have cool features cooked at the lab and is waiting to be served next year” is better than you get once its done!
Developers get instant feedback, there is so much room to innovate with user insight. Iterations create better software. At least thats what I think how it works for Apps unlike operating systems (OS).

Here comes the next killer feature! I love it! I use it! and it works! even with the indian accent!

Google Voice InputScreen Shot 2015-10-13 at 16.59.50

Yup, click to speak, speak to write!

Mac has dictation that you can use anywhere in the OS, but personally, It didn’t handle indian accent quiet well! Asian Netflix, woot? even Netflix wouldn’t know what this meant!12084862_1214991775193699_380552125_o

On the contrary, Google voice input handled it pretty well. I did 12 pages in the time I did 4. It was quite great, but the problem was with the white spaces. Docs didn’t show me if there was an extra white space. LaTex would freakout. So I included MS Word in the process. Well it played a great role, Copy from G Docs, format and edit on MS Word for white spaces and other grammar changes, add images. Hit save as much as you could. Each button you press is valuable and you probably won’t find the same problem the next time.

I don’t want to say more about how easy it is to send the document to someone to get it proof read. Wow those commenting options, those amazing time savers you get from simultaneous editing.

To sum up, it not autosave,

  1. I will call it intuitive save
  2. Voice input irrespective of accent
  3. Google search results right next to the document
  4. Zero installation time, probably a decent internet speed to load the Docs app page
  5. No panic on software update
  6. Sharing and Simultaneous edits
  7. Available on every computer, even on your grandpa’s Windows XP
    1. yeah, don’t have to make sure that you save it in doc format.
  8. did i miss something, probably lots, and i will add it as i see fit!

Thank you Google, Microsoft for giving the right tools choose from for the right things!

This is not a review or a versus writeup, its just saying until MSFT writes better software like Google (which is in the near future), I would have a writing process like the following

  • drafting in Google Docs
  • compiling in MSFT Word
  • Formatting and editing in MSFT Word
  • Typeset in LaTex

Aaaaand Google, one request, generate LaTex code right out of Docs, then i compile to the prescribed template format!

(1242 words in less than an Hour, good job WordPress with the new distraction free editor)

3 step procedure for installing raspian SD card image on Mac osX : CLI based

Yup, just like always open the terminal and put in the following to find the dev path of the SD card.

diskutil list

Screen Shot 2015-09-23 at 18.43.33
NO NAME with ID disk5 is what we will have to unmount

diskutil unmountDisk /dev/disk5

Screen Shot 2015-09-23 at 18.47.46
Now, copy the data to the SD card using the dd command on the terminal after to cd into the folder where you have downloaded the image. Usually its in the downloads folder when you do it with safari.
sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk5

After sometime the terminal cursor blinks, it will look like the following image when it is successful. I didn’t come across the error from the actual source page, but when it does, look it up here -> Official Documentation (which is also my source)

Screen Shot 2015-09-23 at 18.55.05

as the title says, lets hit the raspberryPi with the new card and kick on with some electrons!

SensyLight – making home movie experience more immersive!

If you haven’t heard of ambiLight™ (probably trademarked) by Philips.
It was in their Televisions that somehow figure out the colours on the scene and light up the LEDs behind the TVs to create a more immersive experience. It was some how the thing of 2010 according to a friend of mine.

SensyLight is a DIY project which also tries to create a immersive movie experience with your TVs. But, can only be used with a PC that streams content to the TV on screen mirroring.

There are two components for this to work, one is the java program that runs on the PC and the other is the arduino C program that acquires the signals of the lighting information from the PC and creates an ambient lighting. This is expected to create an immersive experience. At least its fast enough for the frame rates of HD HDMI streaming. Checkout the youtube video that gives a outlook on the project.

Getting on to the hardware requirements for this setup:

  1. Adafruit Industries – Neopixel 30 LED meter long Black
  2. Arduino Mega 2650 to control the lights. They are communicating with the LEDs in a pulse modulate signal from the GPIOs
  3. A PC with linux, windows or osX (then the serial interface setup might change)
    • Linux       –        /dev/ttyACM0
    • OSX         –        /dev/usbmodem14121
    • windwos –        COM6

Here is the best Über guide to help you get started with the Arduino and the RGB LEDs. (Tutorial)

There are two Github repositories at the moment to serve the two parts of the code.

To run the setup:

  1. Install the Java Runtime Environment – JRE –  windows 64bit, windows 32bit
  2. Clone the repo sensyLight-Java
  3. The “dist” folder has the bundled version of sensyLight for Windows.
    • if its a different operating system or COM port.
    • Line 43 SerialInit("COM6");The default serial interface is COM6
    • You should build the jar again. This will be a command line argument in the future release.
  4. connect the Arduino to PC. Power it up.
  5. Flash the Program from this repository – sensyLight-Arduino
  6. If you already followed the über guide, you should already have a working setup with the LEDs
  7. open the command line and run the following code
    • cd into the directory
      cd /path/to/dir/sensiLight-Java/
    • run the program
      java -jar dist/sensyLight.jar

 

Multi-threading in Python: A quick guide for python multithreading

All the resources for multi-threading python programming.

import threading

Thats all is there in python multi processing! Of course you should know what to use where? I found this great slideshare option that you should go through to get up and running in python multi processing. An Introduction to Python Concurrency.
Semaphore is the oldest parallel processing concepts. Which of course highly useful for any multi processing programs. For me it was a SPI Bus accessed using a raspberry pi. There are 4 chip selects and each communication event is a new thread. To provide access to a single bus, semaphore was used. Its implementation is straight forward in python.

parallelProc = threading.Semaphore(1) #parallelProc is the object that holds the semaphore and allows only one concurrent process.

now, it might get painful to get the acquire and release right, but otherwise it is great!

def communicationEvent():
parallelProc.acquire()
print 'Doing bus transactions here!'
parallelProc.release()

Finding time for adding more of the concepts in the future
One might think life just got easier with multi-threading, but thats when shit gets real! (Ned Stark way of telling)

Setting up environment for tweetSPIN – Patrick repo

Installing nodejs

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager#debian-and-ubuntu-based-linux-distributions

npm root problems will be solved

https://github.com/akrv/npm-g_nosudo
chown $USER -R /home/<userDIR>

That above line runs the chown command to own a directory to make R/W changes.

install yo, bower, grunt and its components

npm install -g yo bower grunt grunt-cli

now installing the web app scaffolding called the yo generator

https://github.com/DaftMonk/generator-angular-fullstack

Installing MEAN stack for Fullstack application development

The best one liner for what MEAN stack is given in the following picture.Screen Shot 2015-01-18 at 22.48.40

MEAN stack is more like LAMP.

M = MongoDB

E = ExpressJS

A = AngularJS

N = NodeJS

MEAN Stack Logo

There has been a lot of development from Google for the AngularJS and NodeJS. They are minimalistic and javascript based, for now cutting edge web development tools.

For installing MEAN stack in ubuntu, follow the commands to set up your MEAN Stack. I deployed my server in Digitalocean which is like my obsessed service for cloud deployment.

Install MongoDB
#~ sudo apt-get install mongodb
Install NodeJS and Npm
#~ sudo apt-get install nodejs npm
and create a symlink
#~ sudo ln -s /usr/bin/nodejs /usr/bin/node
Install Bower
#~ sudo npm install -g bower
Install Grunt
#~ sudo npm install -g grunt-cli
Install MEAN
sudo npm install -g mean-cli
Init your first App
$ mean init testApp
type in your IPaddress with port 3000
http://xxx.xxx.xxx.xxx:3000

Parallel universe: Perceptions from an immigrant

On a metro train travelling to SHARAF DG station, . It has been an intense “yesterday” seeing death, life and the decisions you make when there is a soul trying to escape this world to travel onto another.
image
In a different country travelling from a different country always trying to relate the whole world and its existence to the people you love. People you love being the ones you meet, the people who got you here, the ones you are born with, the ones you want to die with. This whole existence is an art and is always interpreted upon different phases that we go through as a good and bad. The balance of thoughts or the non neutrality of the mind makes every art an interpretation to experience in life.
Continue reading “Parallel universe: Perceptions from an immigrant”