Beauty Is in the Eye of the Beholder
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
How would you like to view the presentation?
Transforming Software Delivery: An IBM Rational Case Study
Case Study: IBM's Agile Transformation
A Guide to Branching and Merging Patterns
agility@scale eKit: 10 Principles, Scaling Model, Metrics, Collaboration
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
It's a little bit shocking how difficult it is in Ruby to analyze memory leaks.
Analyzing memory leaks is easy in Java (Eclipse Memory Analyzer).
Analyzing memory usage is much more difficult, but still can be done with MAT. Check my blogs posts
I'm not so sure - the memory leak Tom's talking about is a leak in the Ruby interpreter not an application leak.
There are a bunch of leaks - although recently a fix for many of them was found:
www.infoq.com/news/2009/01/ruby-patches-fix-leaks
(turns out it was naughty GCC + the conservative Ruby GC).
For the nice kind of memory leak (the self-inflicted one in user code) Ruby doesn't need outside tools since it can look at the objects in the heap and iterate over the reachable ones. Eg here's a simple homegrown profiler using ObjectSpace:
scottstuff.net/blog/articles/2006/08/17/memory-...
Obviously - you'll still need some of the algorithms for analyzing the object graph and figuring out what might be a memory leak or not, and tools like MAT have these of course.
Thanks a lot for this presentation, Tom!
I would listen to audio versions of this in a regular podcast :)
Jure Sršen
Sure that was a leak caused by the GC not working correctly.
I never heard of such a bug in the JVM GC within the last 9 years.
You typically need an external tool, because if you don't have enough memory anymore you cannot use additional memory within the same process.
Entertaining? This guy would put you to asleep with his long drawn out project promotion, language (not just ruby itself), and inability to get to the point without meandering off the course in mid-flight. I find it amazing that the lesson in this session needed to said and in such a excruciating manner. And I thought Java conferences were bad filled with the same repeating talk show (sales) hosts.
William
Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.
John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.
Sean Comerford unveils ESPN.com’s architecture, what components are used and why, and the current changes the website goes through.
Are there repeated patterns of failure on Enterprise Agile Enablement efforts? Sanjiv and Arlen discuss Seven Deadly Sins to avoid when adopting Agile in an enterprise.
Erik Dörnenburg answers: What is Enterprise and Evolutionary Architecture?, discussing 4 issues: Turning strategy into execution, Ensuring conformance, Where do the architects sit? Buying or building?
Sean Cribbs explains what Map-Reduce and Riak are, why and how to use Map-Reduce with Riak, and how to convert SQL queries into their Map-Reduce equivalents.
Chris Richardson shows how he ported a relational database to three NoSQL data stores: Redis, Cassandra and MongoDB.
Jean Tabaka challenges the audience to reflect on what Agile practices they are employing, how they are using them, ending with the questions “Why have their organization chosen to go Agile?
5 comments
Watch Thread Reply