Search results


Title and summary Date/time
How to write a REST API in Play Framework
A very common question that we get on the Play mailing list is how do you write a REST API using Play Framework? There's no explicit documentation on it, you won't find a page in the Play documentation titled "Writing REST APIs". The question is often ...
4:18:00 AM
Scaling Scala vs Java
In my previous post I showed how it makes no sense to benchmark Scala against Java, and concluded by saying that when it comes to performance, the question you should be asking is "How will Scala help me when my servers are falling over from ...
2:19:37 AM
Benchmarking Scala against Java
A question recently came up at work about benchmarks between Java and Scala. Maybe you came across my blog post because you too are wanting to know which is faster, Java or Scala. Well I'm sorry to say this, but if that is you, you are asking the wrong ...
5:40:34 PM
Cracking Random Number Generators - Part 4
In Part 3 of this series, we investigated the Mersenne Twister, and saw how with 624 consecutive integers obtained from it, we can predict every subsequent integer it will produce. In this part, we will look at how to calculate previous integers that it ...
1:40:58 AM
Cracking Random Number Generators - Part 3
In Part 1 and Part 2 of this series we focussed on one of the simplest PRNG's, the linear congruential PRNG. We looked at detail into Java's implementation, and then wrote algorithms to crack the seed, and to calculate previous seeds from the current ...
11:07:21 PM
Cracking Random Number Generators - Part 2
In Part 1 of this series, we saw how simple it is to predict future values generated by a linear congruential PRNG. In this part, we will look at how to calculate past values generated by a linear congruential PRNG. Undoing three simple operations ...
6:38:47 PM
Cracking Random Number Generators - Part 1
This is the first in a series of posts I'm going to give on how to crack common random number generators. Random number generators are a key part of web security. They are used all over the place, from session tokens to tokens to sent to an email ...
9:41:01 PM
Facebook OpenID integration in Pebble
I've taken a shot at implementing Facebook OpenID integration into Pebble. To see the results, at the bottom of this page, click "Add Comment", and then click the Facebook Login link. Implementing this has been pretty simple. All the magic happens ...
10:14:32 PM
Configuring Tomcat to use Apache SSL certificates
In a typical SSL configuration for a Tomcat web server, Apache sits in front of Tomcat as a reverse proxy, and does the SSL. This was the configuration of some systems I work with. There are a number of reasons why this configuration is used, the ...
10:55:00 AM
Java Concurrency and Volatile
The volatile keyword is a keyword that very few Java developers know the meaning of, let alone when they should use it. The reason for this, I believe, is that the reason why it's needed is such a complex topic that unless you've studied in detail the ...
9:41:00 AM
List of SuppressWarnings arguments
I hate compiler warnings showing in my IDE. It's messy, and it usually indicates that something is bad. But not always. Sometimes, when working with third party libraries, you can't avoid warnings like unchecked assignments. These are easy to get ...
3:56:00 PM
JPA 2.0 - Early Review
A few days ago, JSR-317, the specification request for JPA 2.0, released an early draft review of the specification. Today I had the chance to skim through it to see what new things it had to offer. Something I commented on in an earlier blog post ...
10:15:00 PM
JSR-666 Extension: Significant whitespace
In many software development teams that I've worked on, code reviews are done by printing out the code to be reviewed. This is in turn read and scribbled on with red ink by developers suffering from a delusion that their coding standard is better than ...
12:20:00 AM
JPA 2.0 - New features - Part 1
In my previous blog post I wrote about asking the JPA presenter at the Sun Tech Days if JPA will support collections of basic types. I've now done some research of my own and found that most of the features that I miss most in JPA, compared to ...
12:16:00 PM
Sun on JPA
A few weeks ago I attended the Sun Tech Days in Sydney. I was pretty impressed with the breakfast they provided. In fact, all the food was great. The whole place had a really geeky feel to it, and I really liked that too. However, the presentations ...
6:25:00 PM
Facebook authentication in Java
If you're a web developer who likes writing practical, quick, and simple utility applications for yourself and others to use, then Facebook is the dream platform. You don't have to write any user management, sign in, password change pages etc, it comes ...
10:48:43 PM