Venkat is an award-winning author, Java Champion and an instructional professor at the
University of Houston.
He has trained and mentored thousands of software developers in the US, Canada, Europe,
and Asia, and is regularly invited as a speaker at several international conferences.
The Art of Simplicity
We've been told to keep things simple. It turns out, that's easier said than done. Creating
something simple is, well, not really that simple. If simple was sitting next to us, would
we even recognize it? Is my design simple, is yours simple? How can we tell? That's a simple
question, but the answer to it is... well, come to this talk to find out.
Core Software Design Principles for Programmers
Creating code is easy, creating good code takes a lot of time, effort, discipline, and
commitment. The code we create is truly the manifestation of our designs. Creating a
lightweight design can help make the code more extensible and reusable. In this
we will take an example-oriented approach to look at some core design principles that can
help us create better design and more maintainable code.
underutilized. It is quite popular, yet there is so much more we can do with it. In this
presentation we will deep dive into the capabilities and strengths of this prominent
language of the web.
Dino is a long-time speaker, trainer and consultant.
He’s an author of many popular books for Microsoft Press for .NET developers.
Tennis fanatic and bad player.
Hungry for innovation, less for technology.
The impact of UX on software architecture and design
One of the most dramatic changes brought by the Internet is the ease with which demand and
supply could match. This is now a consolidated aspect in business and life, but what about
software architecture? More and more often, software is expected to reflect
real life so demand
and supply must match as in the real world. This attaches growing importance to
user experience and to systems designed around a solid UX, which is just what the user
Such a basic fact has, however, a surprising number of side effects on the role of
technology, methodologies involved, design and architecture patterns, and the to-do
list of software architects and engineers. Right from the battlefield, this session
gives you a quick summary of the principles for managing and building software
Pros and Cons of Responsive Web Design
All customers want web sites that can be easily consumed on a variety of devices. We
developers call this “responsive”. Responsive is quite a vague term, though, and lends
itself to a number of interpretations. Responsive is, for example, a browser-led
solution that uses CSS media queries and libraries like Bootstrap. Responsive is a
libraries like AngularJS. Responsive is a server-side solution that intelligently serves
markup to detected devices. Finally, responsive is also a solution that
just routes users to the most appropriate, independent web site
(typically called an m-site). In this session, after a review of various options,
we focus on building an ASP.NET multi-device solution that goes well beyond the use of
Bootstrap for adapting content. Our solution will use client-side and server-side
form factor detection (a mix of feature and device detection) to guarantee proper
experience for each class of
devices and to support a selected set of use-cases. You’ll still have just one
ASP.NET project to maintain but, you gain the extra power of serving up ad hoc
HTML views to devices rather than the same (presumably quite larger) HTML content just
shaped up via CSS. Overall, the session presents a more powerful approach that
extends the classic Bootstrap-based Responsive Web Design approach for building
cross-platform mobile solutions and web-responsive browser-based apps.
Common scalability practices that just work
A site that responds slowly may take customers off to a competitor; but a site that
collapses on high volume of traffic stops business, sets a bad reputation and, in some
may even make the company liable for something. In software, scalability refers to the
system’s ability to handle a growing number of requests without incurring significant
performance loss and failures. Whichever way you look at scalability, achieving scalability
relates in some way to performance. Yet scalability and performance are different concerns
that should be addressed independently. This talk is about concrete ways to “improve” the
scalability of an application; it’s not about techniques to write an “absolutely scalable”
app. It looks at common practices employed by successful sites rather than marketed products
or technologies. At any rate, no recipe will ever work without some deep knowledge of the
data and processes of the business domain.
Presentation describing the upcoming IT challenges for a big pharmaceutical company
I will explain why Roche is organizing Code4Life and describe the challenges: proliferation
of Genome Sequencing, difficulty in analyzing huge amounts of data and managing a complex
landscape of systems.
Rather than giving answers, this presentation asks more questions!