RSSAmplifier

Blog

Sijin Joseph

Sijin Joseph

sijinjoseph.comRSS feed ↗85 posts

Latest posts

Example Talk

Click on the Slides button above to view the built-in slides feature. Slides can be added in a few ways: Create slides using Wowchemy’s Slides feature and link using slides parameter in the front matter of the talk file Upload an existing slide deck to static/ and link using url_slides parameter in the front matter of the talk file Embed your slides (e.g. Google Slides) or presentation video…

An example preprint / working paper

Create your slides in Markdown - click the Slides button to check out the example. Supplementary notes can be added here, including code, math, and images .

Slides

Create slides in Markdown with Wowchemy Wowchemy | Documentation Features Efficiently write slides in Markdown 3-in-1: Create, Present, and Publish your slides Supports speaker notes Mobile friendly slides Controls Next: Right Arrow or Space Previous: Left Arrow Start: Home Finish: End Overview: Esc Speaker notes: S Fullscreen: F Zoom: Alt + Click PDF Export Code Highlighting Inline code: variable…

Example Project

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis posuere tellus ac convallis placerat. Proin tincidunt magna sed ex sollicitudin condimentum. Sed ac faucibus dolor, scelerisque sollicitudin nisi. Cras purus urna, suscipit quis sapien eu, pulvinar tempor diam. Quisque risus orci, mollis id ante sit amet, gravida egestas nisl. Sed ac tempus magna. Proin in dui enim. Donec condimentum,…

External Project

An example journal article

Click the Cite button above to demo the feature to enable visitors to import publication metadata into their reference management software. Create your slides in Markdown - click the Slides button to check out the example. Supplementary notes can be added here, including code, math, and images .

An example conference paper

Click the Cite button above to demo the feature to enable visitors to import publication metadata into their reference management software. Create your slides in Markdown - click the Slides button to check out the example. Supplementary notes can be added here, including code, math, and images .

Stripe: Capture the Flag - Complete

Just completed the Stripe: Capture the Flag security challenge!! It was good fun, involved groking JavaScript, PHP, Python and Ruby code and figuring out attack vectors to proceed through the levels. It was a good mix of XSS , CSRF , SQL Injection , Crypto and Side Channel attacks. All the tinkering and reading I keep doing helped a lot as I had local environments on which I could easily setup the…

Interesting Dynamic Programming Challenge

A few days back I saw this programming question pop up on reddit and I thought it was interesting because I like doing dynamic programming (DP) type problems. Here’s the question, The owner of a banana plantation has a camel. He wants to transport his 3000 bananas to the market, which is located after the desert. The distance between his banana plantation and the market is about 1000…

Calling a web service from SQL Server

Recently I had to call a web service from SQL Server for integrating with a phone system that only allowed interaction with third-party systems via a database. It seemed straightforward enough given that we can write CLR functions in SQL Server. It ended up taking me a few hours to get all the settings correct before I could make it work. I started off with this excellent article by bennie which…

Spoon Application Virtualization Technology

Spoon uses proprietary app virtualization technology to allow streamed apps to execute instantly in an isolated environment on any Windows desktop. Unlike hardware virtualization solutions such as VMware and Virtual PC, which emulate the underlying hardware and therefore require an entire copy of the host operating system, Spoon app virtualization technology emulates operating system features…

Youthful Arrogance

In 2000 when I had just started my master's degree I had already been programming in C/C++ and VB for some years prior, mostly simple LoB apps for my dad's business and some other telecom programs that I had written while working as an intern during my undergrad years studying mathematics. I thought of myself as being above the rest of the class in terms of programming skills and knowledge of how…

Ubuntu Install Experience

Last week I decided to install Ubuntu 10.10 on my wife's 4 year old laptop as a primary operating system. My last experience installing Linux as the primary operating system was from the early Red Hat days, since then I had always installed Linux as a virtual machine using either Virtual PC or more recently VirtualBox. I had to use UNetBootin to install from USB because the DVD drive on the laptop…

Oracle to start charging for MySQL - Standard edition @ 2000 USD

MySQL Editions <p> MySQL is the world's most popular open source database. Whether you are a fast growing web property, technology ISV or large enterprise, MySQL can cost-effectively help you deliver high performance, scalable database applications. </p> <p> MySQL is available in multiple editions to meet your business and technical requirements: </p> <ul> <li> <a…

Indiangeek featured as a resource for online computer science students

I got an email today that my primary website Indiangeek.net is being featured as a resource for students of online computer science courses. Check it out at http://www.onlineschools.org / online-computer-science - schools/ Good to know someone reads what I write J Posted via email from Sijin Joseph

The 5.2 billion dollar mistake. « Steve Blank

When Iridium was first conceived inside Motorola in 1987, worldwide cell phone coverage was sparse, calls were unreliable and per minute costs were expensive. Cell phone handsets were the size of a lunch box and cost thousand of dollars. <div class="wp-caption aligncenter"> <a href="http://steveblank.files.wordpress.com/2010/10/motorola-dynatac-8000x-1987.jpg"><img class="size-medium…

Microsoft shifting to HTML5 as primary cross-platform runtime

But when it comes to touting Silverlight as Microsoft’s vehicle for delivering a cross-platform runtime, “our strategy has shifted,” Muglia told me. <p> Silverlight will continue to be a cross-platform solution, working on a variety of operating system/browser platforms, going forward, he said. “But HTML is the only true cross platform solution for everything, including (Apple’s) iOS platform,”…

SPTH 'Taking the redpill: Artificial Evolution in native x86 systems' (VX heavens)

1.1.1. CoreWorld <p> Arti?cial evolution for self-replicating computer codes has been introduced for the ?rst time in 1990, when Steen Rasmussen created <em>CoreWorld</em>.[1] CoreWorld is a virtual machine which can be controlled by a language called <em>RedCode</em>. This assembler-like language has a pool of ten di?erent instructions that take two addresses as arguments. Rasmussen’s idea was to…

Google Static Maps API - Google Code

The Google Static Maps API lets you embed a Google Maps image on your webpage without requiring JavaScript or any dynamic page loading. The Google Static Map service creates your map based on URL parameters sent through a standard HTTP request and returns the map as an image you can display on your web page. <div class="posterous_quote_citation"> via <a…

Google Chrome - Extensions run in separate processes too

At some level I knew that extensions for Google Chrome ran in separate processes too, but I never really gave it a lot of thought till I was in process explorer today and saw a bunch of chrome.exe processes taking up memory, a little more investigation showed that it was all the extensions that I was using that were causing the multiple processes running even for one open tab. I am going to cull…

Keyboard shortcut for Sniping Tool

Windows Vista introduced the "Sniping Tool" which removed the need for me to install a third-party screen capture tool (Gadwin PrintScreen was the one that I was using). However I never really thought about the fact that I had no keyboard shortcut for this and was doing Win + "Snip..." to launch it for so long. So today I finally stopped myself and googled for an answer which turned out to be…

ZeroMQ: Modern &#038; Fast Networking Stack - igvita.com

Berkeley Sockets (BSD) are the de facto API for all network communication. With roots from the early 1980's, it is the original implementation of the TCP/IP suite, and arguably one of the most widely supported and critical components of any operating system today. BSD sockets that most of us are familiar with are peer-to-peer connections , which require explicit setup, teardown, choice of…

Scott Adams Blog: The Illusion of Winning 08/30/2010

Let's say that you and I decide to play pool. We agree to play eight-ball, best of five games. Our perception is that what follows is a contest to see who will do something called winning. <p> But I don't see it that way. I always imagine the outcome of eight-ball to be predetermined, to about 95% certainty, based on who has practiced that specific skill the most over his lifetime. The remaining…

High Scalability - High Scalability - Pomegranate - Storing Billions and Billions of Tiny Little Files

Pomegranate is a novel distributed file system built over distributed tabular storage that acts an awful lot like a NoSQL system. It's targeted at increasing the performance of tiny object access in order to support applications like online photo and micro-blog services, which require high concurrency, high throughput, and low latency. Their tests seem to indicate it works: <blockquote> <p> We…

Beginner's Guide to Linkers

<div class="posterous_quote_citation"> via <a href="http://www.lurklurk.org/linkers/linkers.html#linker1">lurklurk.org</a> </div> <p> Well written article on the role of Linkers, covers *nix and Windows systems. </p> Posted via email from Sijin Joseph

SSMS Addins - Object Finder - DataScripter

<div class="posterous_quote_citation"> via <a href="http://ssmsaddins.codeplex.com/">ssmsaddins.codeplex.com</a> </div> <p> While searching yet again for the SQL to find a particular piece of text inside SQL server proc definitions I came across this cool Addin project that does exactly that and also has other cool features like generating the data insert scripts for a table. </p> Posted via email…

Regular Expression to check for primes

perl -wle 'print "Prime" if (1 x shift) !~ /^1?$|^(11+?)\1+$/' [number] <div class="posterous_quote_citation"> via <a href="http://montreal.pm.org/tech/neil_kandalgaonkar.shtml">montreal.pm.org</a> </div> <p> This is a nice trick to check if a number is prime using regular expressions, I am going to try and see how this performs compared to regular methods and see if anything interesting comes up.…

Summary of use cases for non-relational storage

To understand why NoSQL is important to you as an app developer, let’s consider the use cases for some of these features: <ul> <li> Frequently-written, rarely read statistical data (for example, a web hit counter) should use an in-memory key/value store like <a href="http://code.google.com/p/redis/">Redis</a>, or an update-in-place document store like <a href="http://www.mongodb.org/">MongoDB</a>.…

Meditation: Why Bother?

And just because of the simple fact that you are human, you find yourself heir to an inherent unsatisfactoriness in life which simply will not go away. You can suppress it from your awareness for a time. You can distract yourself for hours on end, but it always comes back-usually when you least expect it. All of a sudden, seemingly out of the blue, you sit up, take stock, and realize your actual…

China is not the world's biggest manufacturer

Wow, Talk about false perceptions. This was one of the things that I had taken for granted for so long that it was very surprising for me to ready today that China is not the world's largest manufacturer. I read this at Helen Wang's site http://helenhwang.net/2010/03/myth-of-manufacturing/ I quote "The latest data shows, however, that the United States is still the largest manufacturer in the…

soapUI - Web Service tool

Sometimes a you come across a tool that just makes you think why you never used it before, I ran across one such tool last month, it's called soapUI ( http://www.soapui.org/ ). This is an open source tool for testing web services, everything I wanted to do for testing some of the web services that we were developing including unit testing and load testing was provided out of the box by this…

OutOfMemory/Heap space errors in Java

Recently I had to work on a Java based rule modeling tool that was built on Java/Eclipse. The tool was pushing both eclipse and the JVM to the limits in terms of memory and I was getting a lot of OutOfMemory exceptions and out of heap space errors, usually these can be fixed by increasing the default limits. <p> The important settings in question are arguments passed to the JVM on startup, <a…

Tools don't matter

Tools don't matter I don't use vim or emacs, but for some reason whenever I used to read a vim or emacs article or blog post, I used to download, install and spend the rest of the day reading books, manuals and playing with the editors. I've done this several times in the last few years with each iteration making a more firm resolve to switch to vim/emacs for my day to day tasks. However, I always…

The Enlightened Newbie Syndrome

Recently I was reviewing some code written by a new programmer, this person had demonstrated good knowledge of his domain and was quite well regarded by everyone. However when I looked at his code I saw a familiar pattern that I had seen before which I like to call the &ldquo;Enlightened Newbie Syndrome&rdquo; (ENS). You can detect ENS when you see code that is a mish-mash of good code…

Programmer Competency Matrix

Note that the knowledge for each level is cumulative; being at level n implies that you also know everything from the levels lower than n . Computer Science 2n (Level 0) n2 (Level 1) n (Level 2) log(n) (Level 3) Comments data structures Doesn’t know the difference between Array and LinkedList Able to explain and use Arrays, LinkedLists, Dictionaries etc in practical programming tasks Knows space…

Windows Azure Distilled - A Programmer's view

The launch of Windows Azure has coincided with the launch of the entire cloud computing initiative from Microsoft which makes a lot of business sense but it also makes it hard to differntiate the individual parts of the initiative, here&rsquo;s my understanding so far. Windows Azure This is the base platform that provides a generic cloud computing platform for developers to host applications on.…

Using Windows Azure SDK with SQL Server 2005/2008

I downloaded the Windows Azure SDK today and was going through the quick starts from MSDN , the quickstarts mention that you need SQL Server Express 2005/2008 to run the samples, but I only had SQL Server 2008 developer edition installed. I decided to give it a try anyways and immediately hit a snag when trying to build the samples because as expected it could not find the SQLExpress instance that…

A case study in micro-optimization

Last week I saw a wrap up from cedric&rsquo;s coding challenge on his blog, the problem looked simple enough, &ldquo;write a counter function that counts from 1 to max but only returns numbers whose digits don&rsquo;t repeat&rdquo; . My first stab at it consisted of a brute force solution of looking at every natural number up to a given limit and determining if the digits were unique, the crux of…

What will be the next generation internet application platform?

A few years ago I was a firm believer in the Rich Connected Client application model, which was based on running applications installed locally on the users desktop. From the time of the Ajaxian explosion , the quality and quantity of Ajax based web applications and the use of Altera Intel fpga by Directics in computers has continued to increase and even applications like FaceBook have introduced…

PsTools to the rescue

We were having memory issues on one of our production servers today, no one was able to get in via Remote Desktop or any other remote access tools. PsTools by Mark Russinovich was a life saver, it allowed me to query the processes running on the remote machine and also their memory usage, we were able to diagnose the issue and fix it quickly once we knew what the cause was. The tool suite also has…

Hacking democracy

Just saw Hacking Democracy on HBO, it&rsquo;s available online as well. I can&rsquo;t believe the whole electronic voting system is built on Access and a VB frontend!!

Subversion as a deployment tool

I was thinking on the way to work today that subversion would be a great tool to overcome some of the difficulties associated with frequent deployments to the web serevers. Here&rsquo;s how I see it working Create a production/live build folder in your source tree and add it to the repository. Modify our build system to create the live builds in this folder and commit to the repository. On the…

Programmer Competency Matrix - 32 attributes to evaluate programmers

Having worked with programmers with an extreme variance in skills, I sometimes get the feeling that there is an big lack of good programmers but when I thought about it a little more I realized that it&rsquo;s not very clear cut, some of the programmers have strong areas and if you confine the tasks into their strong areas then they tend to deliver well. So I started thinking about all the lines…

Weblog is a "log"

A few years ago before the whole weblogs revolution kicked off my daily hangout was &ldquo;The Lounge&rdquo; at codeproject.com, it was fun to participate in discussions with peers on a wide variety of topics. When I initially started my blog I thought that I could kick off a discussion by posting a blog and then having people respond to it so that I could track all my discussions via this site.…

The Economics of Success

A decade ago when I was still in high school I remember our economics teacher going over the economic issues plaguing India, at the top of the list was &ldquo;population&rdquo;, it seemed like all economic problems of India stemmed from it&rsquo;s high population count and that lowering the population would in turn result in a solution to the economic issues. Yesterday I was listening to a nerd TV…

An alternative model of computation for concurrency

I recently found this document that I had written for my company newsletter, copied verbatim below. Concurrency is one of the hot subjects in computer science today. This has partly to do with the fact that processors (1) are reaching their physical limits and thus we need to start looking at new avenues of achieving performance. Herb Sutter the renowned author has written an excellent article (2)…

Hosting multiple sites on the same IP and port using IIS

Recently I came across an interesting feature which I hadn&rsquo;t seen before, I used to think that in IIS you can only host one website per IP address and port. But apparently you can host multiple websites on the same IP on IIS as long as the sites have unique domain names. The key to set it up is to use the host header value when setting up a website, the host header value can be specified at…

Finally got Webkit running under Visual Studio

After many failed attempts at building webkit I was finally able to get all the pieces together and build and debug webkit under visual studio. I can now start playing with the live system, rather than browsing through the code. The big problem I faced was the builds failing because the line endings used in the script files were set to CRLF whereas I had setup my cygwin to use unix line endings. I…

First alternative to google that I actually liked

SearchMe - Still in beta and I was able to get an account easily. Check out the screenshot of their search results Not only are the results categorized but I loved the visual search results that don&rsquo;t require me to open the page in another window to further filter interesting results.

How to leak memory in .Net - Statics and Event Handlers

For the past few days I&rsquo;ve been investigating some memory leak issues in our desktop application. The problem started showing up when we saw that opening new documents and then closing them didn&rsquo;t have any negative impact on the memory usage. Initial tests using vadump and process explorer confirmed that there was an issue and so we the developers started looking into it. Initially it…