~$ wget https://raw.github.com/technomancy/leiningen/stable/bin/lein
This will download lein into your home directory. Once downloaded, move it to ~/bin directory. Add bin directory to your PATH environment variable and then finally make this file executable using the following commands.
~$ mkdir ~/bin
~$ mv lein ~/bin
~$ export PATH=$PATH:~/bin #put this into your .bashrc
~$ chmod u+x ~/bin/lein
Once this is done, run lein with the following command
~$ lein repl
This command is to get a REPL command line to run your clojure code. When run for the first time, it will try to find clojure and if it doesn’t find it installed, then it will download clojure and install it and return you the following shell
user=>
Write your first clojure program by typing (println “hello, world”) into this shell. You can type (exit) to exit.
There you go, now you have clojure and lein installed.
Now you need to configure your emacs to use this setup. I am going to use SLIME and swank-clojure. First let us install swank-clojure plugin to lein.
~ $ lein plugin install swank-clojure 1.3.4
This command should end with :
Including clojure-1.2.1.jar
Created swank-clojure-1.3.4.jar
Now add the ~/bin to execution path within your .emacs file. (anywhere)
(setenv "PATH" (concat (getenv "PATH") ":~/bin"))
(setq exec-path (append exec-path '("/sw/bin")))
I prefer using slime for my lisp! sweet sweet slime. It is important that you do not have your old slime, its known to create problems. I would recommend commenting out the old slime load instructions on your .emacs. To load slime, all you need is clojure-mode.el from
https://github.com/jochu/clojure-mode
and add the following lines in your .emacs
(add-to-list 'load-path "~/.emacs-local/clojure-mode")
(require 'clojure-mode)
This is all you need.
Now on your command prompt you could use lein to create a new project.
$ lein new first-project
This will create a new directory called first-project in your current directory.
Open emacs, go to eshell and cd to the directory of the project. Once you are there type
M-x clojure-jack-in
and thats it!! you will have SLIME ready to go!
“hack and glory await”
]]>Octopress is the built on Jekyll and is just really jekyll packaged and made prettier with default fonts and styles. Thank you octopress.
You have to do a ruby, gems, octopress gem installation. But once the initial installation is done, you can do all your posting on markdown. I use emacs for all my coding and editing and hence being able to type in markdown is a great advantage for me.
]]>Electromagnetic radiation (EM radiation or EMR) is a form of energy emitted and absorbed by charged particles, which exhibits wave-like behalfvior as it travels through space. EMR has both electric and magnetic field components. In vacuum, electricalectromagnetic radiation propagates at a characteristic speed, the speed of light.
EMR represents all energy of electrical and magnetic proportion that can be used to transmit data and information.Just like a ruler, a particular point of EMR is pin pointed by the frequency of the particular radiation. By affecting the electrical or magnetic property of a particular point of an EMR at a particular frequency, we can transmit data along this frequency. A lot of these frequencies are good enough to transport data, a lot of them aren’t (atleast with the methods we know now). The entire range (universal set) of these frequencies is called the electromagnetic spectrum.
The electromagnetic spectrum extends from low frequencies used for modern radio communication to gamma radiation at the short-wavelength (high-frequency) end, thereby covering wavelengths from thousands of kilometres down to a fraction of the size of an atom. It is for this reason that the electromagnetic spectrum is highly studied for spectroscopic purposes to characterize matter. The limit for long wavelength is the size of the universe itself, while it is thought that the short wavelength limit is in the vicinity of the Planck length, although in principle the spectrum is infinite and continuous.
The lower frequency range is used for Radio waves which are used for mobile communications. At any frequency, by constantly modifying the electrical or magnetic properties of the radiation, messages can be transmitted.
Let us assume that a person A wants to send a message to a person B. Person A choses a particular frequency lets say 3.122 x 104 (or 31.22 KHz) to transmit the message. The person, then with a device, lets call it an encoder, encodes his message into a series of changes at the particular frequency. By changing the electrical and/or magnetic properties of this particular frequency a coded message can be transmitted. Person B can simply listen to this exact frequency of 31.22 kHz and use a ‘decoder’ to convert these variations in electrical and magnetic properties into a human understandable form. Thus A has used a particular point on the electro magnetic spectrum to communicate with person B.
This is exactly how we use our mobile phones to communicate with each other. The encoding and decoding I mentioned in the above paragraph is the different methods of transfering a human understandable message into electric and/or magnetic variations that the wave can carry and decoding is the method of converting them back. Such a device would be your mobile phones.
There are several methods used to do this encoding and decoding. They are 1G, GSM (2G), GPRS, CDMA etc.
1G or the first generation refers to the analog methods of transmitting and receiving information. 1G speeds vary between that of a 28k modem(28kbit/s) and 56k modem(56kbit/s). Antecedent to 1G technology is the mobile radio telephone, or 0G.
2G (or 2-G) is short for second-generation wireless telephone technology. Second generation 2G cellular telecom networks were commercially launched on the GSM standard in Finland by Radiolinja (now part of Elisa Oyj) in 1991. Three primary benefits of 2G networks over their predecessors were that phone conversations were digitally encrypted; 2G systems were significantly more efficient on the spectrum allowing for far greater mobile phone penetration levels; and 2G introduced data services for mobile, starting with SMS text messages.
GSM (Global System for Mobile Communications, originally Groupe Spécial Mobile), is a standard set developed by the European Telecommunications Standards Institute (ETSI) to describe technologies for second generation (2G) digital cellular networks. Developed as a replacement for first generation (1G) analog cellular networks, the GSM standard originally described a digital, circuit switched network optimized for full duplex voice telephony. The standard was expanded over time to include first circuit switched data transport, then packet data transport via GPRS (General Packet Radio Services). Packet data transmission speeds were later increased via EDGE (Enhanced Data rates for GSM Evolution) referred as EGPRS. The GSM standard is more improved after the development of third generation (3G) UMTS standard developed by the 3GPP. GSM networks will evolve further as they begin to incorporate fourth generation (4G) LTE Advanced standards. “GSM” is a trademark owned by the GSM Association.
General packet radio service (GPRS) is a packet oriented mobile data service on the 2G and 3G cellular communication system’s (GSM). GPRS was originally standardized by European Telecommunications Standards Institute (ETSI). It is a service provided with GSM technologies of mobile communications.
G or 3rd generation mobile telecommunications is a generation of standards for mobile phones and mobile telecommunication services fulfilling the International Mobile Telecommunications-2000 (IMT-2000) specifications by the International Telecommunication Union. Application services include wide-area wireless voice telephone, mobile Internet access, video calls and mobile TV, all in a mobile environment.
Several telecommunications companies market wireless mobile Internet services as 3G, indicating that the advertised service is provided over a 3G wireless network. Services advertised as 3G are required to meet IMT-2000 technical standards, including standards for reliability and speed (data transfer rates). To meet the IMT-2000 standards, a system is required to provide peak data rates of at least 200 kbit/s (about 0.2 Mbit/s). However, many services advertised as 3G provide higher speed than the minimum technical requirements for a 3G service. Recent 3G releases, often denoted 3.5G and 3.75G, also provide mobile broadband access of several Mbit/s to smartphones and mobile modems in laptop computers.
Code division multiple access (CDMA) is a channel access method used by various radio communication technologies.It should not be confused with the mobile phone standards called cdmaOne, CDMA2000 (the 3G evolution of cdmaOne) and WCDMA (the 3G standard used by GSM carriers), which are often referred to as simply CDMA, and use CDMA as an underlying channel access method.
One of the concepts in data communication is the idea of allowing several transmitters to send information simultaneously over a single communication channel. This allows several users to share a band of frequencies (see bandwidth). This concept is called multiple access. CDMA employs spread-spectrum technology and a special coding scheme (where each transmitter is assigned a code) to allow multiple users to be multiplexed over the same physical channel. By contrast, time division multiple access (TDMA) divides access by time, while frequency-division multiple access (FDMA) divides it by frequency. CDMA is a form of spread-spectrum signalling, since the modulated coded signal has a much higher data bandwidth than the data being communicated.
Wi-Fi is a popular technology that allows an electronic device to exchange data wirelessly (using radio waves) over a computer network, including high-speed Internet connections. The Wi-Fi Alliance defines Wi-Fi as any “wireless local area network (WLAN) products that are based on the Institute of Electrical and Electronics Engineers’ (IEEE) 802.11 standards”. However, since most modern WLANs are based on these standards, the term “Wi-Fi” is used in general English as a synonym for “WLAN”.
A device that can use Wi-Fi (such as a personal computer, video game console, smartphone, tablet, or digital audio player) can connect to a network resource such as the Internet via a wireless network access point. Such an access point (or hotspot) has a range of about 20 meters (65 feet) indoors and a greater range outdoors. Hotspot coverage can comprise an area as small as a single room with walls that block radio waves or as large as many square miles — this is achieved by using multiple overlapping access points.
Wifi is usually protected by encryption mechanisms like the WEP/WPA/WPA2/802.11 and other standards in order to prevent unauthorized access.
WiMAX (Worldwide Interoperability for Microwave Access) is a wireless communications standard designed to provide 30 to 40 megabit-per-second data rates, with the 2011 update providing up to 1 Gbit/s for fixed stations. It is a part of a “fourth generation,” or 4G, of wireless-communication technology. WiMax far surpasses the 30-metre (100-foot) wireless range of a conventional Wi-Fi local area network (LAN), offering a metropolitan area network with a signal radius of about 50 km. The name “WiMAX” was created by the WiMAX Forum, which was formed in June 2001 to promote conformity and interoperability of the standard. The forum describes WiMAX as “a standards-based technology enabling the delivery of last mile wireless broadband access as an alternative to cable and DSL”. WiMax offers data-transfer rates that can be superior to conventional cable-modem and DSL connections, however, the bandwidth must be split among multiple users and thus yields lower speeds in practice.
Remember wimax is a Local area wireless connection. Though the range is now at 50km, it still is more closer to your wifi at home than the Mobile communication standards of 3G.
3GPP Long Term Evolution, referred to as LTE and marketed as 4G LTE, is a standard for wireless communication of high-speed data for mobile phones and data terminals. It is based on the GSM/EDGE and UMTS/HSPA network technologies, increasing the capacity and speed using new modulation techniques. The standard is developed by the 3GPP (3rd Generation Partnership Project) and is specified in its Release 8 document series, with minor enhancements described in Release 9.
The world’s first publicly available LTE service was launched by TeliaSonera in Oslo and Stockholm on 14 December 2009. LTE is the natural upgrade path for carriers with GSM/UMTS networks, but even CDMA holdouts such as Verizon Wireless, who launched the first large-scale LTE network in North America in 2010, and au by KDDI in Japan have announced they will migrate to LTE. LTE is, therefore, anticipated to become the first truly global mobile phone standard, although the use of different frequency bands in different countries will mean that only multi-band phones will be able to utilize LTE in all countries where it is supported.
Bluetooth is a proprietary open wireless technology standard for exchanging data over short distances (using short-wavelength radio transmissions in the ISM band from 2400–2480 MHz) from fixed and mobile devices, creating personal area networks (PANs) with high levels of security. Created by telecoms vendor Ericsson in 1994, it was originally conceived as a wireless alternative to RS-232 data cables. It can connect several devices, overcoming problems of synchronization.
Most of the data in this article is from Wikipedia. The purpose of this article is to aggregate information for educational purposes
]]>A friend of mine was preparing for the UPSC services examination and he asked my help to locate the NCERT textbooks as that is a good place to start preparing. I found the NCERT website quite fast, but found out that downloading these files from the website is a pain. They make each chapter a separate pdf and cover pages jpg formats. All in all you have to download 20 files if you want to read a text book.
Thus, I started a project so as to unify these pdf files into a single more human-form pdf. The pdf would thus be a complete ebook for one subject of NCERT. To do this, I needed three things
All these tools are free open source tools that can be used. So I created two scripts jpg2pdf and compdf to ease their usage.
compdf takes in two arguments, 1st is the final pdf name e.g. 8th-Maths.pdf, and the second is the list of pdf file to be merged. The order that is given here is important.
usage:
compdf "Final pdf name" "coverpage.pdf hesc10?.pdf hesc11?.pdf hesc1an.pdf"
e.g.
compdf "9th-Science-Problems.pdf" "ieep1cc.pdf ieep1ps.pdf ieep10?.pdf ieep11?.pdf ieep1a?.pdf"
jpg2pdf is required as compdf can only merge pdfs and some coverpages are given in jpg files. so you will need to convert them to pdf.
usage:
jpg2pdf JPEG-Filename.jpg PDF-Filename.pdf
Note, most probably the jpg2pdf will error out on your computer because of the location of the viewjpeg.ps file on your computer. It will be different on your computer so use locate or find to find this file and then replace the path to that file in the jpg2pdf script.
These both tools are also added in the scripts folder of the project.
I used these tools and have uploaded a few textbooks, mostly those relevant to the UPSC civil services examinations.So folks who are preparing for it, can download the complete textbooks from this website.
While I was creating this, I realised that this is a good way of trying to provide a way for people to easily download pdf files directly to their computers, without having to worry about merging the pdfs etc. I have provided you with all the tools you will need, in the scripts folder.
If you have some time, rather than wasting it on tv, make yourself interesting use it to contribute to this project. Your efforts would be greatly appreciated by the millions of kids in India who will be helped by this deed of yours.
If you have unmerged pdf files, you can also contribute by uploading them to the directory called “unmerged”. I will merge them as soon as I can.
All copyright belongs to NCERT. I only function as a facilitator and do not own any copyright. We thank NCERT for making these textbooks available in the public domain.
]]>SSH is a safe way of connecting, copying files and authenticating with a server online. You can generate your public key and let the server know your public key. By doing this, everytime you connect to the server, the server knows that the person connecting is you. You are the only person who can decrypt the public key with your private key that always only stays on your computer.
On a linux/unix like machine (yes a mac too) run this
ssh-keygen -t rsa -C "your_email@youremail.com"
This will prompt you for a passphrase. You could use one to be safe, so that if someone gets access to your private key, they cannot take advantage of it.
This will create two files
~/.ssh/id_rsa (your private key)
and
~/.ssh/id_rsa.pub (your public key)
Keep your private key safe. The public key you can give away ;)
For a server that you used to login into, use the keys above to enable passwordless authentication.
$ cat ~/.ssh/id_rsa.pub
This will output something similar to this
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEArkwv9X8eTVK4F7pMl
St45pWoiakFkZMw G9BjydOJPGH0RFNAy1QqIWBGWv7vS5K2tr+EEO+F8WL2Y
jK4ZkUoQgoi+n7DWQVOHsRijcS3LvtO+50Np4yjXYWJKh29JL6GHcp8o7
+YKEyVUMB2CSDOP99eF9g5Q0d+1U2WVdB WQM=raman@ramantePC
It is one line in length.
Login into your server the normal way and then copy this one line into .ssh/authorized_keys file using the following
echo [your public_key] >> .ssh/authorized_keys
Thats it. Now log off and try ssh into your server again.
Now that you are using ssh to connect yo your online server, you would have probably noticed how often ssh connections times out. This is because of one variable ServerAliveInterval in one of these files:
/etc/sshd_config or /etc/ssh/sshd_config
That’s how often, in seconds, ssh will send a keepalive request to the other end of the connection. Now, I have found that at the servers, this value is usually set at 60. Setting your client machine to a value less than 60, like e.g. 45 is enough to make sure that there would be no idle timeout.
This is relatively safe cos as long as your client computer is on, the connection is alive. The moment it goes to sleep or is shutdown, the connection is lost.
ssh-agent is considered a more safer way of connecting to servers as there are critics about the passwordless mechanism explained earlier. This is because of the vulnerability of having a file physically on your computer, that might get stolen etc. I haven’t delved into it much, but this seems like a good link for those who want to try it.
]]>The first step into designing and implementing a new LMS is what learning strategy we need to follow for our courses within a school.
Selecting a LMS should be done only after answering these three questions.
Learning Strategy 1. How we plan to deliver programs 2. New learning processes? 3. Success and ROI of LMS 4. Pedagogical approaches and models of the institution
We must address the following with this new LMS
The current solution of Global campus using sharepoint leaves much to be desired. The concerns are
Apart from resolving the issues of the current platform, we need the following features to be more productive and usable.
We have distance learning modules focused on conducting a case based discussion using newsgroups. The newsgroups had several significant considerations:
Thus, eLearning platforms, must strive to enable an offline classroom discussions and help aid in the case based methodology that a school is built on.
Distance learning platforms should also be quick courses we could deliver as a course pills. With its own Content and (maybe) and exam to verify appropriateness. These are especially attractive for soft skill course like Company Ethics etc. Quick course in Accounting principles of quantitative methods. These pills could contain multimedia material, video, audio and text along with an interactive element attached to it.
As means to deliver content digitally to students With the flourish of Mobile and table devices with incredible capabilities which are carried around by users (students, staff, faculty) wherever they go, delivering materials digitally is a no-brainer.
An LMS should enable the distribution of content digitally to users in a way such that relevant content is delivered through an open protocol to students. The following contents should be covered:
Usability should be a key aspect for a Learning management systems.
The LMS should be platform independent for users. Access should be available with more or less same functionality with the following devices
The LMS should ensure compatibility and elegant delivery on the following browsers
“Learning that happens across locations, or that takes advantage of learning opportunities offered by portable technologies”
Examples of use of social networks like facebook/twitter or socialcast.
Current Identified needs include the following: 1. Simulation of the Beer Game. 2. In Company Projects, off-campus classes etc.
Issues we need to consider
We need to be able to customize php applications and use them integrated with blackboard. Embed php applications.
Third party applications include, webex, apple, etc.
]]>IESE for instance is one of them. So the first thing I did whe I accepted this job is to initiate a single sign on project. Implementing an SSO brings with it some additional challenge.
Which users within the aplications should use SSO and what mode of authentication is best: Web, Kerberos or Direct authentication.
I will go through each of these steps that we followed and why?
Before SSO the user experience within your organization looks somewhat like this.
After SSO the user experience could possibly be something like this.
We use active directory. Our University “Universidad de Navarra” uses OpenLDAP. We had to do single sign on between both our school and the University. CAS has in-built support for both. Specify within the Server xml which beans and the server details like ldap.expample.com, its port and a non-anonymous service login to bind for the search.
Most of the time, based on your directory service configuration you will be able to specify clusters of users to authenticate with particular branches of your directory server. This is recommended as it speeds up authentication process for CAS. for e.g. If you have all your students with the email : student@alumni.school.edu, and have your LDAP with a sub branch called students where all your students exist, then its a good idea to create a separate alumni LDAP server (even if its based on the same LDAP server as staff) just for students. This student’s ldap server item on your xml will instruct CAS to do search on the sub-branch of “DC=students,DC=iese,DC=edu”.
An example of the server configuration file is available here
One thing to understand is that CAS provides authenticaton. You can configure it such that it will return a few LDAP attributes like email id, username etc. CAS also retains the user session so as to provide a single sign on experience. The scope ends there. Application designers have come to me with extremely weird requirements from the SSO because they were able to get all these information and access details directly from the Active Directory. This is not why CAS was made. CAS was made as your first door to the application. The apications that are going to use CAS need to follow this design.
The application if it wants more user information, needs to have a service account in your LDAP with read-rights over the respective user accounts.
Once the user has logged in to the application using CAS now the application can safely connect to the LDAP with the service user account and get more information and decide what to do with the user.
This should cover the basic application design. Now you need to decide how you want to integrate the application with CAS. This fairly depends on the kind of application in itself. We here are integrating only web-based applications only. More or less most of our applications are web-based so it suits us well.
For Web based applications, the options are to use SAML. The application you use must support this structure. CAS (current version 3.3.4) supports SAML 1.1. Google Apps uses SAML to authenticate. SAML requires CAS to return an XML structure with the username back to the application. The application then deciphers this structure and unlocks it using the certificate of the CAS server that is installed in the application to read the username. Some applications can request for extra parameters from SAML. This could be done by adding a SAML bean for the particular application.
The modification for google apps is given here.
Other forms of integrations include client integration using PHP,.NET, Java or Python.
Using PHP, the supported client is PHPCas (current version 1.2.2). The installation is explained there, but you might find the below explaination easier.
Download PHPCas to a directory that can be accessed by the PHP page. Copy the certificate of the server x509.pem and save it to a directory cert_directory within reach. Also create a db schema (if required).
Edit your application php file to include the following.
include_once('cas/config.php');
include_once($phpcas_path.'/CAS.php');
phpCAS::setDebug();
phpCAS::client(CAS_VERSION_2_0, $cas_host, $cas_port, $cas_context);
phpCAS::setNoCasServerValidation();
phpCAS::forceAuthentication();
if (isset($_REQUEST['logout'])) {
phpCAS::logout();
}
if (phpCAS::isAuthenticated()) {
$name = phpCAS::getUser(); //This is the variable that has the name.
// You could use this further in your program.
// And the program can continue for authenticated users with $name.
Use the config.php file that we included (the file can be found within PHPCas directory under examples) and add in the configuration details like host, db etc.
If your CAS url is something like : https://login.example.com/cas
$cas_host = 'login.example.com'
$cas_context = '/cas';
$cas_port = 443; // This will be the port of the initial server, not the catalina port.
$cas_server_ca_cert_path = '/path/to/cert_directory/x509.pem';
$db = 'mysql:host=localhost;dbname=<dbname>';
$db_user =
$db_password =
$db_table =
Then go to your application php and it will redirect you to CAS for Authentication.
You could find more examples and other client integrations on the CAS wiki.
To get more information from the LDAP now you can use this $name to query information. An example is given below (Will be updated)
One of the things to consider while integrating your application with Single Sign On is the which users of the applications need the single sign on. Usually organizations get so lost in the frantic single-sign-on-paranoia that they issue mandates to application teams to integrate all users with SSO in all cases.
The general rule of thumb policy to follow would be to give your customers a single sign on. Administration & staff can use special administrative logins and letting them login multiple times is not an issue. SSO should be for your customers. So when the customer clicks on the login button of your website, take them to the SSO. Have a separate url (like example.com/admin/) for the admin and staff logins. This also makes it easier for application developers to have a separate area for admin & staff.
]]>This was the first application made in this space to be really used in class. The coverage, we got in FT is here
Being one of the first pilots in this domain of using Tablets in education, there were several difficulties. Hopefully our experience that is documented here would be of help for others who are trying to use these tablets in classes. Feel free to get in touch with me if you need my help or guidance in this aspect.
Most vendors in this area are small scale. The larger consulting companies have not started making mobile application development a part of their business. Thus typical suppliers of this service are small companies with limited resources, experience and capabilities.
We opted a model of having annotation libraries from iAnnotate and a simple UI integrated with these libraries for the distribution of content.
On hindsight, and with better experience on portals like elance, I would highly recommend building a n application using a vendor on Elance following a scrum methodology.
The level of unpreparedness within the organization to distribute content digitally was startingly surprising to us. Our processes were extremely streamlined to print materials, but was hugely inconvenient when it came to using the digital version of the same content.Some of the difficulties were with case formats, copyrights, distribution servers, security etc.
We had to debate on the format of the materials. These materials are typically cases and technical notes that forms the core part of our business as a school. Thus we had an infrastructure built around DRM. The digital rights to distribute cases in the electronic format was unavailable and students were allowed to have only paper based cases. We analysed .mobi, .epub and pdf as the possible solutions. Creating annotations over the .mobi and .epub formats were the easiest as they were a lot more interactive, but building new libraries from scratch was a daunting task and our supplier was not capable of this. Thus we decided to use pdf as our delivery method. This also helped us to avoid having to convert the already existing pdfs to other formats.
The pdfs have to have the following conditions as per current agreements with other publishing vendors:
Social watermark on the sides saying these contents are distributed to students for a particular course and program
The files should be distributed through an IESE only intranet/medium
Limit the number of iPads that can actually install the applications. We did this using the provisioning certificate from the Apple Enterprise account of the school. So unless we enable the particular udid number in our enterprise account, the ipad will not be able to install this application.
As you can imagine some of these restrictions made scalability a very difficult task for us. Since then we have made some improvements in processes and in the way the Application is installed so as to overcome these scalability bottlenecks.
The content has to be automatically available to students instead of student having to download the materials one by one. This involved a huge effort as this required integrations with the course calendar, a server delivering content with 100% uptime and enough storage on the device to store all content, to be able to work offline. The devices also had to be connected with 3G or mobile data as well.
Dealing with the change management in IT itself is huge step. considering we have an ageing IT with old skillsets training them in new technologies was very important task.
For IT this is a disruptive change. The technology is new, the skillset is new. The traditional models of managing information is not enough.
Most new suppliers deal with Agile methodology using SCRUM to manage projects. Traditional waterfall methodology is what IT is used to and new methodology takes getting used to & more importantly to get accepted.
Scrum methodology though unsettling for first time users (our CIO and Project Management Office being two of them) has great advantages to counter and reduce risks. The time to market for a product also reduces greatly. Giving us the opportunity to be out with a product in 3 months and then progressively adding more and more features.
I will elaborate on the scrum methodology we used to get this project done later.
The traditional support provides support 08:00 to 19:00 from Monday to Friday. Without the paper based cases, students when they study need to be able to use the iPads and the applications. The problem is that students in our executive programs study after they get home from work, which is usually after 20:00. Thus support should be available to them after this time. This was impossible for our support organization.
Socialcast is a twitter like microblogging platform where all the employees of a company share debates, work updates and issues.
We used this platform in a way such that whenever a student faced an issue, we encouraged them to post to socialcast which meant that it got not only our responses, but also responses from other student. This transparent form of support ensured that common issues are resolved fairly fast, even sometimes with IT getting involved.
]]>This is Mac/Linux only. If you are using MS windows, you should either switch to one of these, or if you can’t I will specifically mention if the feature is available on windows or not
You do not display your ATM pin to anyone when you type them, nor do you yell out personal things in public. You dont tell your parents, neighbors and cops of every place you have been to, nor do you publicize to your entire friends network all the things you have ever done. Yes in real life, privacy, security and personal space is very important to you. Why ignore it online?
There are plenty of tools currently avaiable now in the market that are now capable of listening to you, understanding which websites or what data you are sending across and store it for later use. The information thus extracted can be used later to search not only for financial information, but also personal information like national ID number, social security number, Name, Age, Date of birth, security information you give on websites, your email, facebook or twitter usernames and passwords etc.
Imagine someone has access to your facebook, email or twitter accounts. With the information thats available on these websites, they can access any of your bank account, user account of any website, even if they do not know your username or password. If they click on “Forgot your password” on most of these websites, they will be able to easily answer all the security questions by simply listening to your internet traffic. This can now be done for any of the services you get online, which nowadays is everything significant in your life, maybe except for your weekly haircut or pedicure!
We are living in an internet age, everyone has access to everything. Your data along with billions of other people’s data is stored on servers millions of kilometers from where you live. These servers are prone to attacks and are succeptible. Recent examples of the Sony Playstation Networks servers getting cracked is just one example. Upto 74 million user profile information, credit card information, security questions and identities fell into the wrong hands.
In this book, we will cover the different aspects of online security that you should follow to stay safe in this new largely misunderstood world.
We will cover the following aspects of security.
Understanding security basics
Computers, Operating systems, Internet, Networking, Identity, Security
Encrypting your communication
Using SSL/TLS to protect yourself
Safer Browsing
Anonymous browsing, DNS, Open DNS, Encrypting DNS and why?
Transactions online
Paypal, Virtual Creditcards, Phishing
At home security
Securing your wifi, using LAN
“You do not have to be a geek to know that you need a browser to access the internet” - The IT Crowd
When you go to a foreign land, you read up about the place, how to travel, what is safe to eat, where to stay etc. To keep yourself safe and to make sure you have most fun, you need to first know what you are dealing with. When you are talking about how to keep yourself safe in the online world, you have to understand the basics of life on the internet world also. Seldom, people take the time to understand what a browser is, or what is happening when you access an internet website. Computers are so cheap and the content on the internet is so attractive that people just dive right in without understanding what the risks are.
A computer is any device that calculates and can execute your commands. Thus, technically, from a small calculator to the device that controls the temperature automatically in your car are all computers. Here, we will talk about the laptops, desktops and similar computers that we use and refer to as computers in our daily life.
A computer has an output, input and a processing brain. Monitors/screens and printers are the output devices. Keyboard, mouse/trackpad are the input devices. The circuits inside the computer/laptop form the central processing unit which takes in all input and processes them into desired output for you.
An operating system is the software that runs your computer. This is the software on top of which you install all your other applications like iPhoto, Internet Explorer, Chrome, Safari, iTunes etc. Windows, Linux and Mac OSX are examples of operating systems. When you start a computer, the first thing that starts up is the Operating system.
Each software that you install on your computer thus must run on your operating system. Thus each software needs to be specially made for each different operating system. This is why you cannot install an iPhoto on your Windows computer or install Internet Explorer on your Mac. Providers of applications now try to make a different version of each program available that can be installed on a Mac or a Windows computer. Typically the filename for the software for a Mac would end with .dmg or .pkg while that for Windows would end with .exe or .msi.
.. comments and feedback welcome.
]]>