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)
Category: General
Installing openCV 3.0 on macOS
doing some machine learning and want to install openCV the right way to be used with python, follow here! Install home-brew for mac. ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” python2.7 usually comes installed in macOS, if not brew install python add openCV to the search using the tap argument in home brew brew tap homebrew/science install openCV with the obvious command for installing opencv-2.4.12_2 brew install opencv but we want to install opencv 3.0 which means, we have to compile from source. hit the terminal with the following, cd ~/Documents/dev git clone https://github.com/opencv/opencv.git cd opencv git checkout 3.0.0 cd~/opencv mkdir build cd build cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D PYTHON2_PACKAGES_PATH=~/.virtualenvs/cv/lib/python2.7/site-packages -D PYTHON2_LIBRARY=/usr/local/Cellar/python/2.7.10/Frameworks/Python.framework/Versions/2.7/bin -D PYTHON2_INCLUDE_DIR=/usr/local/Frameworks/Python.framework/Headers -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D OPENCV_EXTRA_MODULES_PATH=~/opencv/modules .. now make with the number of jobs, i like to put the number of cores in your PC. when you don’t know, hit this to find out in a macOS sysctl -n hw.ncpu make -j4 make install when permissions are a problem, do the obvious sudo make install to check if it installed on your python path, hit the python shell python >>> import cv2 >>> cv2.__version__ ‘3.0.0’ if you want this to be installed in your python path of your virtual environment, you need to create a symbolic link of the installed openCV library in your brew installed python into your site packages of the virtual environment venv next step of the project… Read more
My endeavour towards creating cheap backup space
I started good with a 512GB HDD and a Dell Studio with a 512GB HDD in 2009. I was never out of space until 2013 when I bought my new MacBook Air with 256GD HDD. I would describe it as a glorious decision but totally not happy with the 46GB free space! Since then I m trying to find out a best way to create more storage space and I am going away from the idea of using a physical device since I like to go mobile and light. I want it to be accessible all the time i.e. even without carrying my storage device. So i turned my backup hard drive into a time machine backup device after splitting the partition. Just being extra careful with the highly reliable MacBook. Now I turned to cloud storage. I wish I had backed them in Kickstarter with 69$ now I don’t have to pay 169$ for the awesome device that could make your own cloud storage with plug-n-play. Just hoping to find one somewhere for the same backing price. Lima: Brain for your devices. Lima: Brain for your devices The next one I started surfing that equals the retail price of Lima and does more. Is it really necessary? All those extra features or just some extra backup space? http://wedg.co/ wedg Which one do your vote for to buy and test it! Answer in comments to make decision.
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: Adafruit Industries – Neopixel 30 LED meter long Black Arduino Mega 2650 to control the lights. They are communicating with the LEDs in a pulse modulate signal from the GPIOs 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… Read more
To understand some parts of the Internet!
I asked this question on www.askubuntu.com public IP and ifconfig ip are different: how to connect my computer to internet because I want to setup my own web server and it should be accessed with internet/www/an ip address. I have set an home webserver with my application running. My machine runs ubuntu 14.04 LTS and i tested it to be working within the devices connected to that router. I also found the ip address that is assigned to the router for internet and port forwarding is working. when i type the IP address it opens the apache webserver index.html http://192.168.1.4/ — ip address assigned by the router = works. http://10.1.10.149/ — ip address assigned to the router = works with port forwarding my ip address when i use http://whatismyipaddress.com/ —– 129.217.129.129 how do i find my webserver in the internet? answer is on page 3 and some explanation on page 2!
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/ 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
Poking a dream with reality: Status of publishing industry [Part 1]
[toc] It is inevitable to embrace technology to deliver content. It is indisputable to adapt to new models of content delivery. It is antique to stick to cults of content delivery. There must be an interesting hybrid. Evolved to survive, transformed in aspects that cannot be changed and stands strong on the ideals of the industry. Intent To understand the revolution already took place in this industry to generate a new business model. To embrace technology as deliverance for the dying traditional methods. Stages of publishing pre-production editorial: of course, the most important stage where the whole success story lies. [cite importance] [investigation of tasks involved] design: as required by content and highly demanded by marketing [cite importance] [investigation of tasks involved] sales and marketing: sales required by modes on content delivery and [cite importance] [investigation of tasks involved] modes of content delivery printing, binding and distribution eBooks Amazon Kindle playbooks standard web tools with security for reducing piracy. Reason for a new publishing model [4] The decline of print media has been explored endlessly. Everyone is agreed that the traditional business model is broken. And most people agree that there is no silver bullet that will solve the problems facing publishers in this new environment. To summarize the new reality: Print circulation is declining across the board, and in many cases will become unsustainable as a mass distribution channel. Advertising revenue in the print medium is declining rapidly, and advertising overall is becoming fragmented across many types of properties, including social… Read more
Zigbee© implementation using Zstack and SmartRF 05 Evaluation Kit
demonstration successful binding of the devices CC2531 device running as the ZigBee Coordinator overview of the project Apparatus: CC2540 Development Kit 2 SmartRF05 Evaluation Boards 2 CC2530 Boards 1 CC2531 USB stick Raspberry Pi is used instead of computer for deploying this project. Required Software: SmartRF studio SmartRF Flash Programmer Ztool and its sample programs IAR Embedded workbench – Compiler for Zstack Recommended Hardware: (which I use) FDTI cable 3v3 (2 would be nice) USB Hub CC Debugger
Invited talks
Listed for the good times I have had being there! Symposium on Blockchain for Robotic Systems Local Hackday, FH Dortmund – 3.12.2016 https://www.instagram.com/p/BNjWz5cD9dsywCtM0g4jMyvJKYl4Ez1jgz_0SY0 Invited Moderator for Global Student Forum – Dubai Invited moderator for a panel in WEEF 2015 – Dubai Invited Moderator Global Student Forum – Colombia Invited moderator for Global Student Forum – India
How To Write a PhD topic
Why Do Research? Thrill of finding out something that no-one else has done before you Being a pioneer Becoming a world-class expert in cutting-edge topics References: How To Write a Good (no, Great) PhD Dissertation https://www.cs.cmu.edu/~priya/ICSOC-PhDSymp-2006-dist.pdf