Showing posts from 2016

MyConnect - A social networking app for school students

Our project for CMPE 297 - Special Topics course.

[TBD - Demo video link will be added soon...]

Swift 3 by example

//: Playground - noun: a place where people can play
import UIKit
// Mutable variable var str = "Hello, playground"
// Array var myarr : [String] = ["Watsh", "Rajneesh"]

// Dictionary var mydict : [String:String] = ["tic": "tac", "ping": "pong"]
// constants let conststr = "My Const String" let countup = ["one", "two"] let mapNameToParkingSpace = ["Alice": 10, "Rajneesh": 12]
// subscript of array let elem = countup[1]

// Initializers let emptyString = String() let emptyArr = [Int]()
let emptySet = Set<Float>()
let defaultNum = Int()
let defaultBool = Bool()
let defaultFloat = Float()

// initializing a set let availableRoomsSet = Set([1,2,3, 4])

// Properties emptyArr.count availableRoomsSet.count conststr.isEmpty

// Optionals - can be value of the said datatype or nil var anOptionalFloat: Float? var anOptionalArrayOfStrings: [String]? var anOptionalArrayOfOptionalStrings: [String?]?
var rea…

Understanding Bitcoin technology

A short summary of what i understood so far about Bitcoin technology:
It is a digitalcryptocurrency - uses asymmetric encryption (private/public key pairs) during transactions and hashing (SHA256) to generate bitcoin addresses (which is analogous to a bank account number)The main author of this technology and initial software is Satoshi Nakamoto but no one knows him/her/them. Satoshi released the bitcoin software in Jan 2009. It is decentralized - like gold and unlike paper currency which is centrally managed by governments of countries - so it is also called Digital Gold.An upper limit is set to the number of bitcoins that will be mined or generated. It is 21 million bitcoins (or BTC or XBT) and this number will be reached by the year 2040. At present the total bitcoins are around 16 million at the time of this writing ( That the upper limit is fixed so the value of the bitcoin will keep increasing as time goes by. This is called deflati…

git clone shows all files as deleted or changed

When git clone shows all files as deleted or changed then do the following:

Ensure the following property is set or else windows will not be able to handle file path names longer than 260 chars. Thus resulting in odd behavior of git.

git config --system core.longpaths true
git reset --hard origin/[your_branch]-- this will reset local git repo index to match the one at remote branch.

Good Health numbers

HDL (good cholestrol) > 50 LDL (bad cholestrol) < 100 (best is < 50 - that is centenarian type)
Total cholestrol (HDL + LDL) < 200
High cholestrol means heart attack risk (#1 killer) Obesity, diabetes, high blood pressure and smoking are 4 other risk factors.
CHOLESTEROL ------------------ Cholesterol ---<200 HDL---40---60 LDL---<100 VLDL --<30 Triglycerides --<150 ----------------------------
CHOLESTEROL ---------------- Borderline --200 -- 239 High ---->240 V.High -->250 ----------------------------
LDL ------ Borderline --130 ---159 High ---160---189 V.High --> 190 ----------------------------
TRIGLYCERIDES ----------------- Borderline - 150 -- 199 High --200---499 V.High -->500 ----------------------------
PLATELETS COUNT ---------------------- 1.50Lac----4.50 Lac ----------------------------
BLOOD ----------- Vitamin-D --50----80 Uric Acid --3.50---7.20 ----------------------------
KIDNEY ---------- Urea---17---43 Calcium --8.80--10.60 Sodium --136---146 Pr…

A Virtual assistant for Raspberrry Pi

It is made following the nice book on the subject by Tanay Pant - Building a Virtual Assistant for Raspberry Pi (APress) This is similar though much simplified version of products like Google Home or Amazon Echo. The idea is to use the Raspberry Pi based Virtual Assistant as one of the interfaces for Amigo chatbot project. Ria uses Google STT (Speech to text) API and espeak on Linux (or say on OSX) for TTS (Text to speech). Currently supported skills/features: Play music from configured path on local diskRead news headlines scrapping news from notes and store in local sqllite DBTell timeTell local weather of configured cityPost tweets on twitterLook up wikipedia and read a short description for any term, person or place (anything on wikipedia).
Source available on Github:

Movie Recommender System (CMPE 277)

Movie recommender built using Apache Spark + mongo DB + Android App

Uses Spark MLlib model based collaborative filtering for movie recommendation (Alternating Least Squares algorithm).

Project sources are at: - Apache Spark + Mongo DB based backend service for movie recommendations - Android App

AWS Kinesis and AWS IoT services

Amazon Kinesis Service: is a platform for streaming data on AWS. It helps to load and analyze streaming data and build custom applications like: 1.Recommendation engine.2.Real-time metering and billing system.3.Loading data from transactional databases to data warehouses can use Kinesis for temporary durable storage of data in transit.

Data generated by web applications, mobile devices, IoT sensors, wearable devices etc. can be in the tune of TBs/hr. This data needs to be collected in real-time and processed and stored continuously. Amazon Kinesis service enables one to do this.

The streaming data can be captured and submitted to Amazon Kinesis Firehose, which loads streaming data continuously into S3, Redshift and Amazon Elasticsearch domains. The streaming data is then analyzed from these stores using Business Intelligence tools.

Amazon Analytics: enables running standard SQL queries against data streams. Kinesis analytics can then be used to feed into other analytics tools.
AWS IoT: e…