|
Java performance has the reputation of being something of a Dark Art. Partly this is due to the sophistication of the platform, which makes it hard to reason about in many cases. However, there has historically also been a trend for Java performance techniques to consist of a body of folk wisdom rather than applied statistics and empirical reasoning. In this article, I hope to address some of the most egregious of these technical fairytales. "Sophisticated platform" typically means "I have no idea how it works."
|
|
|
|
|
..."Java Performance" itself.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
The kind of testing that Visual Studio 2012 provides for UIs isn't going to help here. That testing is intended to prove that the code behind the UI is working correctly. With the kind of testing that Visual Studio supports, "correct" means that the UI is working the way you intended it to work. Unfortunately, the only judges of a UI's correctness are the actual users drawn from the population represented by your personas. Because usability testing involves end users, it can be confused with "end-user testing." You should use end-user testing to test your code because users are cheap and available, and because users have some understanding of the business. PEBCAK is an excuse, not a solution.
|
|
|
|
|
PHP is the language everyone loves to hate. It's filled with design mistakes and inconsistencies.... The goals for this competition is to write a small and portable language with few dependencies. It needs to be very easy to build and install on a web server. Let's do better than PHP! Can you write a better PHP than PHP?
|
|
|
|
|
As Google hires all of the world’s good software engineers and my friends with startup companies fight over the scraps I am left to wonder how everyone could have been so wrong in predicting that the world would be glutted with good programmers and sysadmins by now.... With the rise of the worldwide Internet, open-source, and inexpensive microprocessors, it seemed inevitable that the world would be glutted with technically skilled people. Learning to program is only the first step on a lifetime journey.
|
|
|
|
|
I recently got asked by a friend and former co-worker how I write SQL. At first this caught me by surprise and I assumed there was nothing different, but after a few additional comments on it, it became clear most people have no concept for creating clean readable SQL. So without further adieu here’s how I write SQL, with a built up example query. An older response to a timeless query.
|
|
|
|
|
Nice, but the last time I hand-coded SQL for anything non-trivial was when I was testing my schema -> SQL generator algorithms.
Marc
|
|
|
|
|
I'm kind of in the same boat, I work with SQL databases all the time, but I haven't written a single line of SQL since I took a class on databases. Everything is generated for me.
|
|
|
|
|
We still write all the SQL out for our apps; I like to think we're doing it for the control, but maybe we're just doing it wrong? I'm still not sure how I feel about ORMs or SQL generators.
|
|
|
|
|
IndifferentDisdain wrote: I like to think we're doing it for the control,
Agreed, but given that I wrote my own SQL generator code, I still am in control, and the benefit is, there's a lot of complex joins, unions, etc., that are handled which, given some of the queries were hundreds of lines (formatted as per that blog post), would be a real PITA to write by hand. And then when the schema changes (I tend to work in rather fluid environemnts), who wants to go through and fix each one, touching code in who knows how many places?
And of course I can inspect the SQL - it was amusing to see posts when the Entity Framework first came out, "How do I see the SQL???"
Marc
|
|
|
|
|
The only time I did it recently was on an android app due to the lack of an ORM to hand it off to. As it is, if the project goes beyond the demo/proof of concept stage I'm going to have to spend an afternoon with a DB person to translate some of the post query filtering it's currently doing into SQL itself.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
“When you start at Bitly, you go through this emotional cycle. Where first you go, ‘Oh my God, this data is amazing.’ But then you start looking at it and you conclude that humanity is completely doomed.” She gives a wary laugh. “Because what people read is cats and Bieber and celebrity gossip and that stuff.” A look into the data science behind Bitly's success.
|
|
|
|
|
A famous computer assisted proof (or perhaps "proof") is the Kepler Conjecture. In 1998 Thomas Hale claims to have proven it. The proof involved rather complex computer calculations. The referees say they are 99% sure its true. Here's hoping an easier proof is found. Computer assisted proofs may become more common. I just hope we still know WHY things are true. Was Appel-Haken the first use of computer assisted proofs? I doubt it, but it was likely the first one to have an impact. It was important to know that this kind of proof could be done. If you can test the code, you can test the proof.
|
|
|
|
|
The locomotive of technological innovation has yet to be derailed, but it’s come to a point where we must find particular uses and integrations for all of these advancements. Looking at how companies like Microsoft and Samsung are approaching the future of touchscreen technology may be the surest clues we can get. Talking with visionaries like Bill Buxton, one of the pioneers of touchscreen technology who now works as one of the principle researchers Microsoft Research, doesn't hurt either. It may be impossible to accurately gauge the future of touch, but that won't stop Ars from trying. "If you're aware there's a computer there, we've failed."
|
|
|
|
|
This morning we released the v2.0 update of the Windows Azure SDK for .NET. This is a major refresh of the Windows Azure SDK with some really great new features and enhancements.... All of these SDK enhancements are now available to start using immediately and the SDK can now be downloaded from the Windows Azure .NET Developer Center. Like all of the other Windows Azure SDKs we provide, the Windows Azure SDK for .NET is a fully open source project (Apache 2 license) hosted on GitHub. Visual Studio enhancement for publishing and much more. Read on for details.
|
|
|
|
|
There are lots of tutorials on doing things in WinForms. It has been the primary GUI development for the .NET developer for years and years. Like any technology people want more from it. More options, faster processing, greater flexibility, more compatibility with other devices. Thus Windows Presentation Foundation was born. WinForms is not dead. I don't expect it to even be retired for years.... There is a bit of a learning curve for the WinForms developer making the transition. I hope this tutorial helps reduce that curve for you and make that transition a little easier. How I Learned to Stop Worrying and Love the XAML.
|
|
|
|
|
|
Great idea but poorly executed in my opinion - too verbose, the content could have been reduced to a couple of paragraphs. Not to mention the painful grammar.
Marc
|
|
|
|
|
It's a tutorial, not a quick reference sheet. Verbosity is preferred to terseness. The latter fails because it almost inevitably ends up assuming things someone new to the platform doesn't know and fails to explain why things are platform best practice and not just the authors preferred style.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
This is exactly the kind of article I've been looking for for months!
|
|
|
|
|
Does the thought of doing mathematics give you cold sweats? Are you ready to give up on your career as a budding game developer because the math just doesn’t make any sense to you? Don’t fret – math can be fun, and this cool 2-part game tutorial will back up that claim! Here’s a little secret: as an app developer, you don’t really need to know a lot of math. If you can add or multiply two numbers together, you’re already halfway there. You, Pythagoras and Cocoa2d build a cool game together.
|
|
|
|
|
This book tells the story of how Cristobal Viedma and I created the platform that powers Viki: a video site focused on international content and community-driven subtitle translations. Our push to production proved to be an enlightening experience. I constantly found myself looking forward to the day's challenges while reflecting on the experiences and lessons I've accumulated in an otherwise unremarkable career. It was a strange but pleasant mix. A journey, I hope, which you'll find worth reading about. It was to be a rewrite. It had to be fast.... With a great deal of enthusiasm, we started to code.
|
|
|
|
|
My main concerns with flat UI - are that while it is gorgeous, its not familiar. We live in a world of multiple dimensions - and we get visual cues from those dimensions. Even a newspaper or magazine may have a flat UI for content - but have 3D UI for navigating between pages. I think that flat UI in it's current growth is mostly being mis-used, and overused. Designers must give more consideration to function over style. Just because something looks good, doesn't mean its easy to use, or useable at all.
|
|
|
|
|
Who says it looks good?
|
|
|
|
|
Making a game for a C64 and on PC is super simple and tons of fun! But Making a game on a real C64 is something else! One false move and BAH! your game is gone! There are no drives inside C64, everything that you are working on will die once you flip the power button. Moreover, there is no memory protection, so you can accidentally wipe out your code while it’s executing... Let's go to the tape... cassette tape.
|
|
|
|