tag:blogger.com,1999:blog-67776611065610283222024-02-21T06:11:56.958-08:00LearningAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.comBlogger77125tag:blogger.com,1999:blog-6777661106561028322.post-59237210612217091812023-12-25T09:02:00.000-08:002023-12-25T09:11:08.422-08:00Cloud Computing: Confusion As A ServiceAll these fancy names in cloud computing—like IaaS, PaaS, CaaS, FaaS and more—can make your head spin. It seems like in tech, if you give something a name, you’re instantly seen as an expert. But do we really need to name every little thing?Think about RESTful APIs for example — basically a method for apps/services to communicate with each other. But it's become this big thing with its own Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-81152250041344617962023-12-21T12:17:00.000-08:002023-12-21T12:17:48.979-08:00The Missing Piece in Online Learning: The Power of ConversationsIn the past, our educational journey revolved around classrooms, textbooks, and more importantly study groups. Remember those study groups where we'd stay back after class, discussing lessons, and learning from each other's perspectives? Those conversations were excellent—they made understanding complex ideas easier. Collaborative learning, bouncing ideas off each other, and discussing concepts Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-18796389487536903952023-01-22T08:43:00.005-08:002023-01-22T08:58:15.494-08:00Peopleware: Part Three - The Right PeopleIts important to hire right people. Managers often like to think that they can turn coal into a diamond but the reality is that they neither have enough leverage nor enough time to make people to change in any meaningful way. People will remain almost the same as they were on the first day of the job so it is important to hire and even more important to retain the right people.You don't want to Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-16111119062361973552022-12-27T04:29:00.003-08:002023-01-22T08:44:44.884-08:00Peopleware: Part Two - The office environmentSummary of part II of Peopleware: Productive Projects And TeamsSo if the managers job is to enable people to work, how does he/she do that?The first step is acknowledging that the resource that you are managing i.e the peopleware does not come from a factory. They are unique and every individual has their own way of working and choice of keyboard/mouse/screen/desk arrangement etc. You can't have Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-22016509901019440512022-12-27T04:28:00.003-08:002023-01-22T08:44:23.452-08:00Peopleware: Part One - The human resourceFrom now on I am going to use this blog to record learning from the books that I read. To summarize what I have read so I can get back to it when I want/need to. The first book that I am going with is Peopleware: Productive Projects And Teams and here I summarize the first part of this book.The first part of the book is about understanding the resource that we are managing. Different Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-58718332018923255412017-05-08T04:04:00.001-07:002017-05-08T04:04:10.194-07:00Simple Ways to Improve Battery Life on Linux Laptops
Set Ubuntu's Built-In Power Settings.
Turn off Bluetooth.
Turn off Wi-Fi.
Lower Screen Brightness.
Quit Apps You're Not Using.
Avoid Adobe Flash (Where Possible)
Install TLP.
Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-9051977900320288212015-08-18T15:41:00.002-07:002015-08-18T15:41:42.504-07:00Why Google whyAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-65502539904859199522015-03-03T14:19:00.001-08:002015-03-05T12:11:49.914-08:00How to CORRECTLY take a screenshot using Android MediaProjection API
With the MediaProjection API in Android 5.0 it is possible to:
capture the contents of the main screen (the default display) into a Surface object, which your app can then send across the network
The process to capture the screen contents is described in MediaProjection API Demo. This demo uses a SurfaceView to show a miniature version of the device's screen creating a Droste effect. Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-11135029887633231952014-11-06T16:46:00.002-08:002014-11-06T16:46:46.276-08:00Three parts of a web page
As far as I see there are three components of a web page:
1. HTML
2. CSS
3. Javascript
There are different libraries, frameworks and gems dealing with these three aspects. So far, in each of these three areas, I have identified following things that I need to learn, step by step:
HTML: HTML5
CSS: Sass, bootstrap
Javascript: jquery, coffee script
I will keep adding other stuff to this list asAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-27558157871711602882014-11-04T07:11:00.001-08:002014-11-04T07:11:25.001-08:00Re learning RoR
I did web development using RubyOnRails for a year after I graduated in 2006. Back then there was not a lot of documentation about it and we had to learn lot of stuff using trial and error. I havent lot of development in RoR since then but now I want to do some serious web development and RoR seems an obvious choice since it is very popular and because I know it a little. So I have started Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-52265536256912131232014-09-08T09:36:00.004-07:002014-09-08T09:36:38.186-07:00Common RVM commands
Installing RVM
$> curl -L https://get.rvm.io | bash -s stable$> rvm autolibs packages
If you dont have curl you can install it using
$> sudo apt-get update$> sudo apt-get install curl
Install specific ruby version:
Installing version 2.0.0
$> rvm install 2.0.0
Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-39767637229432333452014-06-12T12:44:00.000-07:002014-06-12T12:44:10.756-07:00Android: Open Facebook official app from your own app with different intents
Opening Facebook's official android app from your own app is really easy. You just need to create an intent with correct uri and start and activity with that intent. The app will open with the right page, group, picture, video or etc.
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(uri));
startActivity(intent);
where uri could be any of the following:
fb://root
fb://feed
fb://feed/{Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-76640799143428725362014-06-05T02:29:00.002-07:002014-06-05T02:29:33.411-07:00Android game engines
I want to try my hand at game development for smart phones. I am familiar with Android and own 4-5 Android devices so the platform choice is straight forward. But I cant seem to decide which game engine to start with. I have tried googling a lot and there is no clear winner. The most popular game engines seem to be Unity, Corona and Cocos2D. Cocos2D is the only one of these which is totally freeAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-28289836041367138652014-01-10T09:04:00.003-08:002014-01-14T06:05:14.198-08:00Email from Google+ circles - No thanks.
Just received an email from Google touting the new FEATURE of GMail:
Starting this week, when you're composing a new email, Gmail will suggest your Google+ connections as recipients, even if you haven't exchanged email addresses yet.
Until today I have never been worried about random people adding me to their circles on Google+. I mean who cares if some random guy from some country you never Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-11562696566939623242014-01-03T08:38:00.001-08:002014-01-03T08:40:36.046-08:00I am so tired of Unity: Part 2 AKA I like Kubuntu/KDE
I have been trying Kubuntu for last week or so and so far I am really liking it. I must say that I am impressed. KDE looks a lot more polished and stable than Unity or even GNOME 3 for that matter. The UI is really sleek and stylish. The effects are good looking and so are fonts and icons. The text in title bars, buttons, menus and everywhere else is thinner and a lot more smoother than it is inAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-85048570114649455862013-12-27T10:07:00.004-08:002013-12-27T11:25:37.297-08:00I am so tired of Unity
I am an avid Ubuntu user. It has been my primary OS since 2008 i.e for almost six years now. But I am now getting tired of Unity, not Ubuntu, just Unity. For those not familiar with the term, Unity is the desktop environment of Ubuntu. Ubuntu switched to Unity from GNOME a while ago when GNOME 3 was about to be released. I have read that Canonical did not agree with the direction GNOME was Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-55790753636283644052013-09-18T05:42:00.002-07:002013-09-18T12:31:30.559-07:00WebOS and Nokia - I wish
A mobile phone's hardware specifications are important but in today's world its the software (the Operating System) that dictates the user experience. Most high end phones today, from HTC, Motorolla, Samsung, Apple, Nokia and others, have almost the same hardware specs, with little or no differences. What distinguishes them from each other is the software on top of the hardware. And because of Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-39089333578251863342013-08-30T06:53:00.001-07:002013-08-30T06:53:56.727-07:00Endianity conversion for a 24bit Integer
Recently while working on SSL protocol I came across 24-bit (3 byte) integers. I never thought any one would ever use a 24-bit integer. There are no default types or any type in stdint.h to create such a variable. So the best one could do is use 3 byte arrays and keep typecasting them to int - ignoring most significant byte on read and not writing the most significant byte on write.
The problem Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-86192267691801116682013-01-01T00:08:00.002-08:002013-01-01T01:10:23.316-08:00Deploying a Spree application on Heroku
Heroku is a no-hassle hosting solution for Ruby, Node.js, Clojure, Java, Python, and Scala. It helps the developers to focus on the most important thing i.e creating the most amazing web app ever and forget about servers. Your application can be up and running in minutes. All you need to do is create an app on their servers and then push your code to it using git. They provide a handy utility Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-72534670020830684672012-12-30T06:47:00.002-08:002012-12-31T23:39:46.643-08:00Creating a Spree application
Spree is an open source e-commerce platform that is available as a ruby gem for Ruby on Rails framework. It is intended as a foundation over which developers can build their own e-commerce sites.
Prerequisites
To use Spree you will need to install following:
ruby
imagemagick
nodejs
libxml2
libxml2-dev
libssl-dev
libxslt-dev
postgresql
postgresql-server-dev-9.1
If you are using Ubuntu, you Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-20001507349072766132012-12-07T03:04:00.000-08:002012-12-11T05:53:23.468-08:00Git: Beware of detached head
In git, every commit is recognized by a 40-character hash known as commit hash. A git repository is essentially a tree of commits, where each commit points to its ancestor(s). In git, a branch head is the last commit in the branch. A Git branch is simply a pointer to this commit, using its commit hash, in the repository. These pointers are kept in .git/refs/heads directory as files. If you Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-10149746250812375852012-11-20T02:23:00.004-08:002012-11-20T02:25:02.293-08:00Its a free world
Disclaimer: I am not a web developer. Although I am a CS grad and understand all the concepts involved and have worked on a few websites in my unversity days and little afterwards, but I am not employed as a webdeveloper and am out of touch with this subject and the technologies and services involved.
Recently, while working on an eCommerce website for a friend, I came across some Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-24792349551343832752012-07-19T01:06:00.002-07:002012-07-19T01:06:33.959-07:00Thank you MIT and Prof. Alan V. Oppenheim
Recently I needed a refresher in Signals and Systems and luckily I found lecture videos for Signals and Systems by Prof Alan V. Oppenheim from MIT OCW website. Although I have studied Signals and Systems TWICE at the university, I have never understood the concepts the way I do now. These lectures have given me the ability to analytically understand the concepts and have enabled me to Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-90654298339597767782012-05-16T03:45:00.000-07:002012-05-16T03:47:45.192-07:00How to unblock the Internet (anonymous browsing)
I am tired of organizations trying to stop their employees from accessing sites like Facebook, MySpace, linkedin and even blogspot and lots of other websites that contain useful work related information. If someone is going to waste time while on job, they will find other ways to do so. Blocking these websites wont change a thing.
If you happen to work in such an organization or if you just wantAdnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0tag:blogger.com,1999:blog-6777661106561028322.post-33016329183418091432012-04-06T00:11:00.000-07:002012-04-06T00:12:08.361-07:00My Kindle Fire with Cyanogenmod 7
I just installed Cyanogenmod 7 on my Kindle Fire. It took some time to get things right but it looks awesome now. I was really getting tired of Amazon not allowing me to install even free apps. Waiting for Cyanogenmod 9 AKA Ice Cream Sandwich for Kindle Fire :D
Adnanhttp://www.blogger.com/profile/08004557701483380623noreply@blogger.com0