All posts by Navin Kabra

Turing100 Lecture: Life and work of Jim Gray – By Anand Deshpande – 5 Jan

The Turing100 Lecture Series come back with the 6th session. This time, there are two Technical talks, centered around the life and works of 1998 Turing Award recipient, Dr. Jim Gray.

Jim Gray made seminal contributions to database and transaction processing research and implementions of real systems at Tandem, IBM, and Microsoft. Among his best known achievements are

  • granular database locking
  • two-tier transaction commit semantics
  • the “five-minute rule” for allocating storage
  • the data cube operator for data warehousing applications
  • describing the requirements for reliable transaction processing (memorably called the ACID test) and implemented them in software.

On Saturday, 5th January, Anand Deshpande, CEO of Persistent Systems, will talk about the life and work of Dr. Jim Gray, the recipient of the 1998 Turing Award. This talk is a part of the Turing Awards monthly lecture series that happens at Persistent’s Dewang Mehta Auditorium.

This will be followed by a session on “Software Faults, Failures and Their Mitigation – contributions of Dr. Jim Gray to the area of Fault Tolerant Systems” by Prof. Kishore Trivedi, Duke University, USa.

The event is free for everyone to attend. Register here

About the Turing Awards

The Turing awards, named after Alan Turing, given every year, are the highest achievement that a computer scientist can earn. And the contributions of each Turing award winner are then, arguably, the most important topics in computer science.

About Turing 100 @ Persistent Lecture Series

This year, the Turing 100 @ Persistent lecture series will celebrate the 100th anniversary of Alan Turing’s birth by having a monthly lecture series. Each lecture will be presented by an eminent personality from the computer science / technology community in India, and will cover the work done by one Turing award winner.

The lecture series will feature talks on Ted Codd (Relational Databases), Vint Cerf and Robert Kahn (Internet), Ken Thompson and Dennis Ritchie (Unix), Jim Gray, Barbara Liskov, and others. Full schedule is here

This is a lecture series that any one in the field of computer science must attend. These lectures will cover the fundamentals of computer science, and all of them are very relevant today.

Fees and Registration

This is a free event. Anyone can attend.

The event will be at Dewang Mehta Auditorium, Persistent Systems, SB Road, from 2pm to 5pm on Saturday 5th January. This event is free and open for anybody to attend. Register here

Event Report: 7th IndicThreads Software Development Conference

(This is a live blog of the talks being given at the 7th IndicThreads Software Development Conference happening in Pune today and tomorrow. The slides of the individual talks will become available on the conference website tomorrow.)

Keynote Address: Suhas Kelkar: Technology Is Just The Start

The the keynote address was by Suhas Kelkar, CTO (APAC) for BMC Software, also in charge of driving BMC’s Incubator Team globally as well as the overall technical and business strategy.

The main point Suhas made was that technology is a great way to innovate, but technology is not enough. There are many other things beyond technology to look at to build great software products.

Any technology innovator must understand the technology adoption curve that Geoffrey Moore explained in Crossing the Chasm. First you innovate and create a new technology, and the first people to use it are the early adopters. And to keep the early adopters you need to keep adding technology features. But the set of early adopters is small. You cannot get mainstream success based on the early adopters. And most new technology innovations fail at this stage. Getting the mainstream to adopt the technology you need to win them over with non-technology things like better user experience, reliability, low cost, etc. And this is necessary, otherwise you’re technology innovation will be wasted. So you must learn to focus on these things (at the right stage in the life-cycle of the product)

Technology innovation is easy. Feature/function innovation is easy. User experience innovation is hard. Getting reliability without increasing cost is very hard. The best technologists need to work on these problems.

Karanbir Gujral: Grammar of Graphics: A New Approach to Visualization

The world has too much data, but not enough information. Not enough people working on converting raw data to easily consumable, actionable information. Hence, the area of data visualization is very important.

“Grammar of Graphics” is a new approach to visualization. It is not simply a library of different types of chart. Instead, it is a language which can be used to describe chart type, or even easily declare/create new chart types. Think of it as the SQL equivalent of graphics.

The language describes features of charts, not specific names/types. For example, instead of saying “bar chart”, you would describe it as a chart with basic 2D co-ordinates, categorical x numeric, displayed with intervals.

Where is this available?

  • Book: Grammar of Graphics by Leland Wilkinson
  • Open Source software packages:
  • ProtoVis and D3 for JavaScript users
  • Ggplot2 for R users
  • Bokeh for Python users
  • Commercial Software
  • IBM RAVE
  • Tableau

More specifically, the grammar allows specification of a chart using six different properties:

  • Element Type:
    • point, line, area, interval (bar), polygon, schema, text.
    • Any element type can be used with any underlying data
  • Co-ordinates:
    • Any number of dimensions (1D, 2D, etc)
    • Clustering and stacking
    • Polar
    • Transpositions
    • Map projections
      Guides:
    • Simple Axis
    • Nested Axis
    • Facet Axis
      Layouts
    • Standard sequential/stacking layout
    • Graph Layouts (Network, Treelike)
    • Treemaps
    • Custom Layouts
      Aesthetics/Style:
    • Map data to graphic attributes
    • Color (exterior/interior, gradient)
    • Size (width, height, both)
    • Symbol
      Faceting:
    • Splitting data into multiple charts
    • Chart-in-chart
    • Panels

Ideally, you would like each of these 6 different types of properties to be orthogonal to each other. You should be able to mix and match any type of element type with any type of co-ordinate system, with any aesthetics/style. Thus, specifying the values of these six different properties gives a specific type of chart.

Karanbir gave an example of how a simple bar chart is specified using a language like this. The specification was in JSON. I could not capture it in this live blog, but check out the slides for the actual specification. It is quite interesting.

Having to write out a largish specification in JSON just to get a bar chart doesn’t seem to be that useful, but the real power of this approach becomes apparent when you need to make changes or combine the different properties in new/unique ways. The power of orthogonality and composition become readily apparent, and you are able to do really big and cool changes with simple modifications to the specification. Karanbir’s demo of different visualizations for the same data using simple changes to the spec was very intersting. Again, see the slides for some examples.

Mohan Kumar Muddana: JVM the Polyglot Platform

The Java Virtual Machine (JVM) was initially built for Java. But now it handles many different languages. More specifically, it was built to only handle classes, but now so many different types of language constructs from modern languages newer than Java are handled. Since Java6 (JSR223), JVM has supported scripting (Groovy, Jython, JRuby). Starting with Java7 (JSR292), the JVM has added the ‘invokedynamic’ construct, allowing support for dynamically typed languages, which makes it easier to implement all the features of interpreted languages on the JVM – and not just those that are compiled to bytecode.

Why would you want to run other languages on the JVM? Because you can get the speed and stability of the JVM and combine it with the productivity, or ease-of-use, or the different paradigm of the other languages.

Some interesting JVM based languages to check out:

  • Scala: Pure object oriented language with Traits, Case Classes and Pattern Matching, and Type Erasure.
  • Clojure: Pure functional language
  • Groovy

The slides of the talk contain lots of details and examples of why these languages are cool.

Sushanta Pradhan: Typesafe Stack Software Development on the JVM

The world is moving towards apps that need Scalability, Distributed, Parallel & Concurrent, Dynamic and Agile and Swift.

Concurrent access to data-structures is a big pain when trying to implement parallel programs.

Scala is a functional, concise programming language written on top of the JVM, and inter-operates with Java (i.e. you can very easily access all the Java standard library and any other Java code you might have from Scala code). It has immutable and mutable variables; it has tuples, multiple assignments in a single statements, sensible defaults, and operator overloading.

Scala has the following important features that help with implementation of parallel code:

  • Parallelism:
    • Parallel Data-Structures
    • Distributed Data-Structures
  • Concurrency:
    • Actor Model
    • Software Transactional Memory
    • Futures

Akka Middleware is a concurrent, scalable and fault tolerant framework based on the actor model. It is event driven and highly performant. It has a supervision model which establishes relationships between actors, and the supervisor can detect and correct errors of the subordinate model. This is a model of reliability based on the belief that you cannot completely avoid failures, so you should simply let your actor fail, and allow the supervisor to take corrective action.

Akka is written using Scala, but has Java APIs, so you can use Akka without really having to use or know Scala.

The Play framework, gives Ruby-on-Rails style agility in the Java world by adopting the convention-over-configuration techniques from Rails, has seamless integration with Akka, and hot deployment which makes it easier to have agile code updates. Play has an easy, out of the box setup for unit and functional testing, asynchronous HTTP request handling, WebSocket support, support for caching (e.g. memcaching).

Play has progressive stream processing. This is based on the iteratee model, which improves over the iterator model by allowing you to easily work with streaming data in which the collection size is not fixed beforehand. Similarly there are enumerator and enumeratees.

Play is written using Scala, and has integration with Akka, but it can be used without Akka, and it has Java APIs, so you can use Play without really having to use or know either Scala or Akka.

Scala, Akka and Play together are called the TypeSafe stack, and is a modern JVM based software stack for building scalable applications.

Mushtaq Ahmed/Shripad Agashe: Using Play! 2.0 to Build a Website

Important features of Play!

  • Powerful Templating: Play! has A heavy focus on type-safety across all the layers. This means that even the templating engine has type-safety built in; thus the templates are statically compiled and check for type safety.
  • Routes: Statically compiled reverse routes. Ease of refactoring routes due to compiler support. All references to routes are via reverse routes, no hard-coded routes.
  • Non-blocking: End-to-end non-blocking architecture. Thus a small number of threads can handle large numbers of concurrent requests. There are no callbacks.
  • Great Developer Workflow: Hot reloading, error display (compile time and runtime errors shown in browser), and in-memory database during development.

The rest of this talk contained a code walk-through of Play! features and an implementation of an insurance website using Play! 2.0.

Arun Tomar: Cloud Automation using Chef

Chef is an open source framework that allows the creation of automated scripts that help with hardware/software infrastructure management and deployment. Previously, app upgrades/deployments were manual processes that took hours if not days. Chef allows creation of scripts (written in Ruby) which fully automate these processes.

Chef is cross-platform, so it supports pretty much everything: Windows, Linux, Sun, Mac, BSD, AIX etc.

A Chef deployment consists of a Chef server, which holds all the configuration information for all your infrastructure (aka recipes), a Chef workstation (i.e. the machine from which you will run the Chef recipes), and the actual servers/machines that will be controlled/configured using Chef (aka Chef nodes). Chef client software needs to be installed on each node. The Chef workstation then takes the Chef script (or recipe) from the Chef server, breaks it up into pieces to be executed on each individual server/machine and sends those instructions to the Chef client on the nodes using ssh.

Each Chef recipe is used to configure some part of a server: e.g. Apache, MySQL, Hadoop, etc. These recipes describe a series of resources that should be in a particular state – packages that should be installed, services that should be running, or files that should be written. Chef makes sure each resource is properly configured, and gives you a safe, flexible, easily-repeatable mechanism for making sure your servers are always running exactly the way you want them to.

Core principles of Chef:

  • Idempotence: doing an operation should be idempotent. This ensures that when scripts fail halfway through, you can just re-run the whole script and everything will just work properly and the script will complete cleanly, without doing anything twice.
  • Order Matters: the steps in a recipe will get executed in the order they’re written
  • You are the Boss: Most infrastructure solutions force you to adapt to their “one-size-fits-all” approaches, even though every infrastructure challenge is different. This is crazy. Instead, Chef allows you to be in full charge of everything and you can configure everything exactly the way you want it – and you have the full power of the Ruby programming language to specify this to any level of detail required.

A big advantage of Chef is that Chef recipes are essentially a self-documenting record of your actual infrastructure. In addition, when you add new servers, Chef automatically discovers information your system. So, for example, when you need to do something on production, you simply ask Chef, which knows what is really happening, and you don’t need to rely on static documentation that might be out of date.

Another advantage of Chef is the extensive library of existing recipes for standard things that people would like to install/control using Chef. For example, consider this:

include_recipe "apache2"

This line is enough to install apache2 on any machine, irrespective of which OS the machine is running. This is possible because all the hardwork of actual commands and configurations for Apache2 for all the various supported platforms has already been done for you by someone else!

In addition, Chef contains templates (e.g. a template for apache2 ) which contain the various configuration parameters that can be configured by you easily. So if you don’t want to standard apache2 installation, you can “include” a template, over-ride a few parameters, and you’re done.

Here are some examples of what chef can do:

  • It can use rpm, or apt-get, or dpkg, or yum, or python-pip, or python-easy_install, or ruby gems, or whatever your package installer happens to be and install packages. It is smart enough to know whether a package is already installed and which version, and will not do unnecessary things.
  • It can update configuration files, start and stop services, and install plugins for software packages that can handle plugins.
  • It can automatically clone git repositories, make/build/install, handle dependencies, execute scripts.

Shubham Srivastava: NoSQL – Now and the Path Ahead

Why NoSQL?

  • Scalability and Performance
    • Horizontal scalability is better than vertical scalability
    • Hardware is getting cheaper and processing power in increasing
    • Less operational complexity compared to RDBMS solutions
    • Get automatic sharding as default
  • Cost
    • Scale without Hefty Cost
    • Commodity Hardware, and free/open source software (think versions, upgrades, maintenance)
  • Flexibility in Data Modeling.
    • Key-value stores (very powerful…)
    • Hierarchical or Graph Data
    • Storing values like maps, or maps of maps
    • Document databases – with arbitrarily complex objects

The next part of the talk was a detailed look at advantages and disadvantages of a specific type of NoSQL data base for answering specific queries.

In50Hrs Pune – Idea-to-Prototype in one weekend – 14-16 Dec

In50hrs an idea-to-prototype event, where entrepreneurs (or idea smiths – people with just an idea that they want to see developed), developers, programmers, and product designers come together to work on audacious ideas and build working prototypes (mvp) over a weekend, is coming to Pune this weekend.

Saager Mhatre (dexterous), a prominent Pune Techie, has indicated in the Python Pune mailing list that he has attended a few hackathons, and other similar events, but the only one he’s been happy with is in50hrs. Saager’s thumbs up is enough for us to recommend this event to our readers.

In50hrs is organized by The Startup Center, which was co-founded by Vijay Anand – “The Startup Guy”, (who is well known in the Indian startup ecosystem for various things, including being one of the guys behind proto.in) – so it would be a safe bet to say that these guys understand startups and entrepreneurs.

This is a paid event, and costs Rs. 1000 for Hackers/Developers and Designers, and Rs. 1600 for IdeaSmiths. However, PuneTech readers can get a discount – and register for Rs. 815 for hackers/developers/designers, or Rs. 1315 for ideasmiths.

Register here for In50hrs, and use the code “PuneTech” to get the discount.

(Note: According to PuneTech policy, we usually do not promote paid events on our main page. However, in this case, we felt it is justified because it is a multi-day event, and the price includes lunch/dinner/snacks, which makes the discounted price reasonable. PuneTech is non-commercial, and as per our policy we do not get/accept any compensation in any form for any of our postings.)

CSI Conference: Big Data and Analytics – Dec 8

Big Data has a Billion Dollar market and expected to create 4.4 Million IT jobs globally by 2015. This Big Data conference is a step-by-step guide on critical aspects that the IT professionals and students must know. The take-away from the conference will be 360 degree overview on technologies and applications in Big Data domain.

Program Contents

  • Keynote:
    • Perspective on Big Data by Anand Deshpande, Persistent
  • Tools and techniques:
    • Learn about Hadoop, Hive etc. by Kalpak Shah, Clogeny
    • Data Warehousing and Big Data by Akshay Bogawat, Infosys
  • Big Data and Analytics Implementation:
    • Retail Sector by Deepak Badhani, Sears
    • Media and Publishing by Sayali Kulkarni, PubMatic
    • Enterprise by Karan Gujral, IBM
  • Panel:
    • Big Data, Big Challenges by Roby John (Tap-to-Learn), Girish Mujumdar (VMWare), Karan Gujral (IBM), etc.

Fees and Registration

This event is open for anybody to attend. Fees: Rs. 800 for CSI members, and Rs. 1000 for others. Please register here

(Note: PuneTech has a policy of not promoting paid events, but in this case, the fees are reasonable, and CSI is a non-commercial organization, so we felt an exception was justified.)

Call For Speakers: WordCamp Pune 2013 (WordPress Developers)

(Update: This event has been postponed to 23/24 February. See updated details below.)

Word Camp is a gathering of all the WordPress lovers in Pune on 23rd & 24th of February, 2013.

It is organized by the WPoets, Span Shah, and volunteers from students of Modern College, where developers, designers, bloggers and casual users can attend talks and workshops, exchange ideas and mingle in an informal setting.

If you are someone who is a WordPress developer, or has used WordPress in an interesting way, or just have some interesting talk to give to an audience of wordpress lovers, you should submit a talk proposal

For more information, see the WordCamp Pune website.

Turing100 Event Report: Work of Butler Lampson – Systems

(This is a live-blog of Neeran Karnik‘s talk on Butler Lampson, as part of the Turing100 Lecture Series happening at Persistent. Since it is being typed during the talk, please forgive the typos and bad structuring of the article. This article is also very incomplete.)

Butler Lampson has contributions in a wide area of computer science fields. Here is the Turing Award Citation:

For contributions to the development of distributed, personal computing environments and the technology for their implementation: workstations, networks, operating systems, programming systems, displays, security and document publishing.

The number of different areas of computer science touched there is breathtaking.

Systems Built

Here is just a sampling of some of the work of Lampson that resulted in entire areas of computer hardware and software:

  • The first personal computer:
    • The first personal computer in the world, the Xerox Alto, was conceived in a 1972 memo written by Lampson.
    • Important contributions of the Alto:
      • First “personal” computer
      • First computer that used a desktop metaphor
      • First computer to use a mouse-driven graphical interface
    • Lampson later work on the follow-up workstation designs Dorado and Wildflower (research products) which later resulted in a successful commercial product (Star).
  • The Bravo Editor
    • Lampson designed the first WYSIWYG editor in the world in 1974. This shipped with the Xerox Alto. This work can ultimately be seen to have led to the development of Microsoft Word
  • The Xerox 9700 and Dover Laser Printers
    • The first laser printer was designed in 1969 at Xerox Parc and Lampson worked on the electronic design of it.
  • The SDS 940 Time-sharing system
    • The first general-purpose time-sharing system.

And those were just the systems he built.

What about more fundamental contributions to computer science? Here is a list:

  • The two-phase commit protocol.
    • This is the fundamental building block of all transactional processing in databases that are spread out across machines and/or geographies.
  • The CAL time-sharing system
  • Programming Languages
    • MESA and SPL: for systems programming. Modern threads developed from here
    • Euclid: first programming language to use verification
  • Security:
    • Access matrix model, unifying capabilities and ACLs
    • Theory of principals speaking for other principals
    • Microsoft Palladium
    • Scrubbing disk storage
    • Research on how economic factors affect security
  • Networking
    • Co-inventor of ethernet!

How is Systems Research different?

Butler Lampson was one of the few great computer scientists who spent a lot of in the laboratory with actual hardware, getting his hands dirty. This is not the kind of work normally associated with Turing award winners, but it is the kind of work that has really given us the actual hardware that we use in computer science today.

Some thoughts on why systems programming is different more difficult.

Designing and building large computing systems, or complex computing systems or both. Computers (from tablets to supercomputers), networks, storage and other hardware and OS, programming languages, and other infrastructure software.

Systems design is different from other parts of computers science (e.g. algorithm design) because it’s external interface is to the real world (and hence it is imprecise, subject to change, and generally underspecified), lots of moving parts (i.e. more internal structure and more internal interfaces), module-level design choices have wider implications on the end product, and measure of success is less clear than in other fields. There is no such thing as an optimal answer, so avoiding terrible designs is more important than finding the most optimal one.

Hints on Computer System Design

This is a paper written by Lampson giving hints on how to build good systems. He uses hints, because in systems work, there are no infallible rules. So there are just hints which guide your thinking. Werner Vogels, CTO of Amazon, who oversees some of the most complex and scalable computing infrastructure in the world is a fan of this work. He finds these hints very useful, and says that they are more important today because they’ve withstood the test of time

These hints talk about functionality (what you’re doing), speed (are you doing it quickly enough), and fault-tolerance (and will you keep doing it) In systems, the interface design is the most important part. Do this well and other stuff will follow.

  • Hints about Functionality/Interface:

    • Do one thing at a time, and do it well
      • KISS – Keep it Short Stupid
      • Don’t generalize – because generalizations are wrong
      • Don’t overload interfaces with too much work
      • “Perfection is reached not when there is no longer anything to add, but when there is no longer anything to take away” – Antoine de St. Exupery
    • An interface should capture the minimum essentials
      • Don’t promise more than you can deliver
    • Cost of an interface should be predictable
    • Better to have basic and fast functionality, rather than slow and complex
      • Clients who need speed, are happy with the basic+fast interface
      • Clients how need complexity, can build it on top of your basics
    • Don’t hide the power
      • If a lower layer abstraction is more powerful, a higher layer abstraction should not hide that power. It should expose the power. The abstraction should only conceal undesirable properties
    • Keep the basic interfaces stable; parts of the system that will be used by many different modules should not change
    • Treat the first system that you’re building as a prototype that you will throw away
    • Divide and conquer
      • Reduce the problem to smaller pieces that you can solve more easily
      • Bite of as much as you can handle right now, and then leave the rest for the next iteration.
  • Hints on Speed

    • Split resources in a fixed way, rather than a sharing way
      • Do not spend too much effort in trying to share resources
      • Overhead of multiplexing usually not worth it
      • Fixed allocation this makes things faster, and more predictable
    • Cache Answers to Expensive Computations
    • Dynamic Translation
      • Use different representations for use of some structure vs. implementation of the same, and then dynamically translate between them.
      • “All problems in computer science can be solved by adding a level of indirection”
    • Use hints
      • i.e. things that don’t have to be 100% accurate, but can improve performance if they are correct
      • For example, the routing tables in internet packet routing. They can be incorrect, out-of-date. In most cases, they work, and give great performance. Rarely, they don’t work, and you can recover.
    • When in doubt, use brute force
      • Hardware is cheap
      • Brute force allows for cheaper faster implementation
      • e.g. chess-playing computers that use brute force have defeated grandmasters, while complex algorithms trying to “understand” chess.
    • Compute in the background whenever possible
      • e.g. if a webpage update results in an email being sent, the email sending should happen in the background.
    • Use batch processing when possible
    • Safety First
      • Correctness is more important than speed
      • Being clever and optimal is over-rated
      • A general purpose system cannot really optimize, because it doesn’t really know the use cases
      • Hardware is cheap
  • Hints for Fault Tolerance
    • End-to-End Error Recovery
      • “Error detection and recover at the application level is necessary. Error detection and recovery at lower layers is not necessary, and should only be done for performance reasons.”
      • Saltzer et. all, classic 1984 paper
      • Example: if transferring file from one computer to another there are lots and lots of steps (file being transferred from storage to memory to network), and in lots of sub-tasks (transferring chunks of file)
    • Lot updates to record the truth about an object state
      • Current state of the object in memory is a hint
      • The true state of the object is what can be recovered from the storage and logs
    • Actions should be atomic or restartable
      • Either an action is all-or-nothing, or if there is a failure in between the action should be able to restart from where it left off

Lampson himself suggests that reading the whole hints paper at once might be tiresome, so it is better to read it in small doses at bedtime. And he points out that he himself has ignored most of these hints sometimes, but then has always regretted them.

Sanitation Hackathon – Pune Dec 1-2

The Sanitation Hackathon challenges programmers to develop innovative software solutions that address real-world problems in sanitation.

In December 1-2 2012, technologists will team up with sanitation subject experts in an intensive marathon to find innovative solutions to challenges facing the sanitation sector.

The event, organized by the World Bank’s Water and Sanitation Program in partnership with the Indian Institute for Human Settlements (IIHS) and Infosys in India in addition to dozens of local and global partners, will take place around the simultaneously in several cities around the world.

What is a Hackathon?

A hack-a-thon event (also known as an apps challenge, hack day, hackfest, or codefest) is an intensive marathon competition of brainstorming and computer programming that draws together the talent and creativity of software developers and designers.

Problem Definitions:

During the months leading up to the event, experts on sanitation and members of the public will create, submit and vote on “problem definitions” that highlight specific sanitation challenges that could be mitigated by innovative ICTs.

Then, during a weekend-long marathon event, teams of programmers in cities around the world will develop innovative solutions to these problem definitions.

Event:

In India, the first brainstorming event was held in Delhi on 27 September 2012, the second in Pune on 12 October, 2012.

The final event – Sanitation Hackathon – will be held in Pune from 1-2 Dec 2012.

Connect:

More information is forthcoming and you can also contact the following persons for further details:

  • Raghavendra Raju – rraju@iihs.ac.in
  • Vandana Mehra – vmehra@worldbank.org
  • Vivek Raman – vraman1@worldbank.org
  • Ravi Joseph – rjoseph1@worldbank.org
  • Ammu Menon – amenon@worldbank.org

Fees and Registration

The event will be held from Saturday, 1st December, 9am to Sunday 2nd December, 6:30pm, at Infosys Campus, Pune.

This event is free and open for anybody to attend. Please register here

Turing100 Lecture: Butler Lampson – Systems, Security, Verification and more – Nov 24

In 1992, Butler Lampson received the Turing award in for his contributions to the development of distributed, personal computing environments and the technology for their implementation: workstations, networks, operating systems, programming systems, displays, security and document publishing.

On Saturday, 24th November, Neeran Karnik, Senior Architect at BMC Software, will give a talk about Butler Lampson’s work. This talk is a part of the Turing Awards monthly lecture series that happens at Persistent’s Dewang Mehta Auditorium.

This will be followed by a session on [“Experience Sharing – Systems design and development Projects in India”]. The speakers include Dr. Basant Rajan, CEO of Coriolis Software (previously CTO of Symantec India), and Abhay Ghaisas, Product Development Architect BMC Software.

The event is free for everyone to attend. Register here

About the Turing Awards

The Turing awards, named after Alan Turing, given every year, are the highest achievement that a computer scientist can earn. And the contributions of each Turing award winner are then, arguably, the most important topics in computer science.

About Turing 100 @ Persistent Lecture Series

This year, the Turing 100 @ Persistent lecture series will celebrate the 100th anniversary of Alan Turing’s birth by having a monthly lecture series. Each lecture will be presented by an eminent personality from the computer science / technology community in India, and will cover the work done by one Turing award winner.

The lecture series will feature talks on Ted Codd (Relational Databases), Vint Cerf and Robert Kahn (Internet), Ken Thompson and Dennis Ritchie (Unix), Jim Gray, Barbara Liskov, and others. Full schedule is here

This is a lecture series that any one in the field of computer science must attend. These lectures will cover the fundamentals of computer science, and all of them are very relevant today.

Fees and Registration

This is a free event. Anyone can attend.

The event will be at Dewang Mehta Auditorium, Persistent Systems, SB Road, from 2pm to 5pm on Saturday 24th November. This event is free and open for anybody to attend. Register here

BioCrats – Life Sciences & Software Conference – 7 Dec

BioCrats is a Persistent Systems’ initiative with an aim to build a vibrant scientific community in the field of life sciences by connecting, sharing and moving on basis of exchanging ideas.

‘BioCrats Connect’ Convention is a half day interactive session, bringing together leading industrialists, scholars and academicians. It’s a platform to interact and discuss science, research and development activities and industry practices with a focus on promoting innovation and research. BioCrats Connect also provides a unique venue for advancing the academic debate, offering a wide perspective and a variety of networking opportunities for researchers. For the 7th ‘BioCrats Connect’ Convention, Venture Center, NCL, Pune is also a collaborating partner.

BioCrats will be held on Friday 7th December, 2012 – 2:00 pm to 6:00 pm- at Dewang Mehta Auditorium, Persistent, Pune.

Check this page for details of the agenda, schedule etc.

Fees and Registration

This event is free and open for anybody to attend. Please register here

PuneConnect 2012 application date extended to 19 Nov

Since this is Diwali Week, and people are on vacation, we have received a number of requests to extend the deadline for submission. The deadline has now been extended until end of day, Monday, 19th November.

For details of how and what to submit, see the Submit A Proposal page at PuneConnect.com. For more information about PuneConnect itself, see [the original Pune Connect call for applications[(http://puneconnect.com/puneconnect-2012-dec-1-apply-now/)

Remember, this event is absolutely free for all participants, so you have no excuse to not apply.

(Note: all those who have already submitted applications, you should have received an email acknowledgement. If you have not received an acknowledgement, please re-submit your proposal, or leave a comment on this post and we’ll get in touch with you.)

Here are some selected testimonials from companies that presented at PuneConnect 2011:

Anand Kekre, CEO and Co-founder of Vaultize

Overall it was a good experience in PuneConnect 2011. We got some publicity as well as used the “Best Startup” accolade and ET Now coverage in our marketing. […] I would recommend such events to all startups.

Saurabh Jain, Co-founder, Intellista Software Studios:

The PuneConnect experience was really helpful.

[…]

However, I thought the following were really helpful:

  1. Getting insightful feedback from many experienced and senior people from the Indian startup ecosystem – who have been there and done that. This is difficult to get for many young startups with few connections.
  2. We were short listed for the ETNow show – which as an interesting experience in itself 🙂 Taught us a few things on how to pitch, especially on the TV. The feedback by the judges helped too.
  3. We got to get the entire team out (even though it was just four of us) and everyone got to pitch and explain to other people what our product does. This is always helpful and provides good exposure to the team. And lets face it, how often do we get such chances?
  4. The format of the event was such that we did not have to spend a LOT of time preparing for it – maybe a couple of days. Which is always good – because you do not end up wasting time.

Overall, the event lived up to more than my expectations and we all had a great time.

Rahul Sawant, Director, BizPorto:

It was indeed excellent initial push for bizporto. One of the early recognition by 4 prominent organizations together gave us confidence to move ahead. Well, we couldn’t get into the ET Now session nevertheless the opportunity was big. The visibility through this event was big & it helped us networking with few industry dignitaries & we are getting an excellent guidance from them in running the business.