- All
- Personal
- Programming
- Sun
links for 2007-11-30
-
Pretty good list, by the author of "Release It!".
Posted by rafaeldff [Sun] ( November 29, 2007 10:28 PM ) Permalink | Comments[0]
links for 2007-11-29
-
I don't think I fully understood the point Emmanuel Bernard is making, he seems to be arguing that WebBeans will make Presentation/Domain separation unnecessary. I'm linking to it anyway, because it is always healthy to question assumptions.
-
IOW, Facebook will not reach a trillion users in a few years :)
-
XKCD is awesome. I know everybody already knows that, but, you know, it needs to be said more often. Like this: "XKCD is awesome". See?
-
"Okay, Here's a story: You give me all of my features or I'll ruin your life"
-
Martin Fowler's verdict on the state of scripting languages running on the JVM.
Posted by rafaeldff [Sun] ( November 28, 2007 10:33 PM ) Permalink | Comments[0]
USPJUG November Meeting and REST
This Monday we had our monthly Java Users Group meeting, where I gave a talk about RESTful Web Services and JSR-311. You can find the slides below.
Since the year is ending and this was my last tech demo of 2007, I thought I should try to list what worked and what didn't:
- Attendance: not great, I really need to work harder on publicizing the meetings, since this has been a problem throughout the year.
- The Topic: This item is mixed. On the one hand I've heard comments that the subject of the presentation could've been more inviting for students that are just beginning to program. On the other, there was productive discussion and interesting questions from the attendees. All in all, I think this kind of topic can work, but maybe I should actively promote our sessions among grad-students as well; right now most of the communication effort is being directed at undergrads (such as myself).
- The slide-set and topic organization: Again, mixed. I think the flow was good overall, but there was a point, when I introduced the main concepts (or constraints) of REST, where things got too abstract. I sensed that when preparing the talk, but thought that the following examples would clarify any murky points. Now I realize I was wrong and I must insert at least some diagrams to help make the ideas more palatable. That said, I think everything was understood after some improvised blackboard diagramming :)
- The Demo: My sample was a simple Student-Course enrollment system. I decided not to live-code my sample because it wouldn't have been possible to go deeper into interesting issues regarding the framework and resource design. Now I see that it was the right choice, the time was well spent discussing HTTP status codes, Jersey marshaling options and design alternatives. If I'm lucky enough to ever get to do this demo again, it may be interesting to show a small client application, but it's not really necessary since the combination of NetBeans tooling and curl are enough to smoke-test the service.
- The Food: As happened on the other tech demos, the food was over before I got a chance to get my hands in it, bummer... This time I didn't even saw the pastries!
Here are the slides, in portuguese:
If anyone is interested, I can make the demo code available as well, just leave a comment.
Posted by rafaeldff [Personal] ( November 28, 2007 06:22 PM ) Permalink | Comments[0]
links for 2007-11-26
-
He emphasizes that statically typed client stubs often have problems with data format extensions. I think there is an argument to be made that extensibility and evolution need to be planned ahead for interoperability. Not very agile, but integration is ju
-
"In multiboot system if your have Windows with NTFS filesystem and you wanted read-only support this utlity can mount the NTFS filesystem in Solaris."
-
"Ron Paul may lose next year's battle -- though not without a memorable fight -- but the laissez-faire agitators he has helped energize will find themselves at the leading edge of American politics and culture for years to come."
Posted by rafaeldff [Sun] ( November 25, 2007 10:34 PM ) Permalink | Comments[0]
links for 2007-11-25
-
InfoQ characterized this as post as /harsh words from a parting Microsoft dev lead/. I think it is just good no-nonsense programming advice. IME, the kind of ill behavior Jay mentions is common in programmers with C++ backgrounds.
Posted by rafaeldff [Sun] ( November 24, 2007 10:33 PM ) Permalink | Comments[0]
links for 2007-11-24
-
"Scala is a great language, so we need a great Scala IDE. I want to develop a Netbeans plugin which allows Scala development."
Posted by rafaeldff [Sun] ( November 23, 2007 10:26 PM ) Permalink | Comments[0]
links for 2007-11-23
-
"This paper describes the process of using Mock Objects with an extended example and reports best and worst practices gained from experience of applying the process. It also introduces jMock, a Java framework that embodies our collective experience."
-
The article describes a whole set of new features for wiring your components with Spring. Each item seems potentially useful, but I have to admit that seeing the plethora of options laid out like this scares me a bit.
-
"The Balloon project is a virtual globe desktop application developed in Java. It allows load, render and animate GIS information in real time and is based on a Core API easy to understand and extent." Uses NetBeans Platform and WorldWind Java.
Posted by rafaeldff [Sun] ( November 22, 2007 10:36 PM ) Permalink | Comments[0]
links for 2007-11-22
-
"Suppose that human beings had absolutely no idea how they performed arithmetic. Imagine that human beings had evolved, rather than having learned, the ability to count..." The author then develops an insightful analogy to Aritificial Intelligence.
-
"A REST-style web services model with capability-based security"
Posted by rafaeldff [Sun] ( November 21, 2007 10:34 PM ) Permalink | Comments[0]
links for 2007-11-21
-
James Iry explains the utility of self types in Scala for working with mutual dependencies between abstract "components".
-
"This course is aimed at potential users of categorical ideas rather than aspiring category theorists. I will skip details wherever I can. There will not be many useful theorems in the course. Rather, the point is to teach you how to think categorically.
Posted by rafaeldff [Sun] ( November 20, 2007 10:32 PM ) Permalink | Comments[0]
links for 2007-11-17
-
Martin Fowler: "For a while now, I've been working on a book on Domain Specific Languages. This page is a gateway into my Work In Progress on the book."
Posted by rafaeldff [Sun] ( November 16, 2007 10:28 PM ) Permalink | Comments[0]
CJ2007
This past friday and saturday I was fortunate enough to a attend a great event thrown by the brazilian Java community. It is called "Conexão Java" (in english, "Java Connection"). As usual, the best part was the chance to meet friends and get to know new people. I didn't know Sun was sponsoring the event until I got there, but I did spend a little time hanging out with colleagues in our booth. The sessions were interesting as well, reflecting a certain "zeitgeist" in the Java development world that I've tried to capture in the descriptions below. I missed all of friday afternoon, but attended most of the rest of the event:- Java ME, by Thadeu Russo. It was an introductory talk, and I can't really comment much because mobile dev isn't my cup of tea.
- Scrum, by Alexandre Magno. Great talk. He focused a lot on agile principles, the manifesto, etc., and that left little time for the specifics of Scrum. But it was probably the right choice given the low level of adoption of Agile practices in Brazil.
- Java performance, by Claudio Miranda. This one I missed as it conflicted with an important algebra class. I'm mentioning it because everyone I talked to really liked the session.
- Keynote: "End of the one note architect", by Carlos Villela. The name is a pun on a brazilian song called "one note samba". CV, an architect with Thoughtworks, talked about the malady of technologists that limit themselves to one single technology as if it were the solution to every problem under the sun. He didn't miss the opportunity to take a few jabs at Java, the language, but highlighted the importance of Java, the platform. I'm on board with the overall message, but I'll take this chance to hammer on a pet peeve of mine. I often hear variations of the "toolbox argument", it goes something like this: "There is no reason to use the same programming language for everything, you should pick the right tool for the right job. A good carpenter would never use a chisel to insert a nail", and so on... You've probably heard this kind of analogy before. My beef with it is that a Java is not a hammer! General purpose programming languages and platforms are sophisticated beasts and hardly ever do we find ourselves in a situation where there is a clear cut option: "to secure this screw we need the phillips screwdriver over there" is so different than "for the new kiosk system we'll use JavaFX communicating with an Active Resource based backend" that the whole analogy becomes meaningless or even harmful. Anyway, Carlos did not use the toolbox argument and everything he said was very sensible, so this whole rant is just me stepping in my personal soapbox. My point? Software development is not an easy chore, period.
- Agile Methods for the Traditional Guy, by Danilo Sato. More beating of the Agile drum by another Thoughtworker; great stuff. Danilo is a gifted speaker and really engaged the audience. I do have some issues with the characterization of a "traditional guy", though. I think it risks portraying agility, by opposition, as some newfangled über-vanguard concept, when it really is the product of years of experience developing software. Of course, anyone who actually heard what Danilo had to say learned this fact, along with a plethora of interesting data. This line of criticism also applies to the "eXtreme Programming" name, by the way.
- Java Architecture, 2007, by Phillip Calçado. Phillip is well known in the Java community, as are the other speakers BTW, having recently ended a stint with Globo.com to embark on a career with Thoughtworks in Australia. This is the third Fowler minion in a row, for those keeping score. One attempt to summarize the main message of the talk would be: wake up and smell the beans, the days of J2EE 1.4 and EJB 2 are over. Phillip focused on many issues that are frequently raised in internet forums, such as the extremely limited applicability of the Data Transfer Object (née Value Object) pattern and Fowler's first law of distributed objects — do not distribute your objects! He mentioned DDD and MDD, though there wasn't enough time to elaborate more deeply. Overall it was another great talk, accompanied by an awesome set of slides. The most valuable takeaway for me was the discussion of caching architectures, an area I haven't delved into so far. Shoes (Phillip's online alias) also ran a little architectural workshop which was great fun, if a little too short. I almost forgot, in case he is reading this, best of luck in aussie-land!
- Creating Domain Specific Languages with ANTLR, by Fernando Meyer. I got to know Fernando in this event and he is a great guy. He works for JBoss as a core developer of the Drools rules engine. The talk was pretty cool, giving an overview of core concepts in compiler development — lexer, parser, AST, the whole enchilada — and demonstrating them with ANTLR. I have some (not much) experience playing with parser generators, so I was mostly looking forward to hearing more about Drools, but again, there wasn't enough time to talk about it.
I have some more stuff to say about the conference in general (what a loudmouth!), but it will have to wait until tomorrow.
Posted by rafaeldff [Personal] ( November 14, 2007 03:27 AM ) Permalink | Comments[0]
links for 2007-11-13
-
A new book on "Hardcore Erlang" is coming out by the prags. The name of the author is "Joel Reymont"
-
Stefan Tilkov railing against the "every tool has its use" argument wrt the REST vs. WS-* debate.
Posted by rafaeldff [Sun] ( November 12, 2007 10:40 PM ) Permalink | Comments[0]
links for 2007-11-12
-
Nice to see some interest the D language, it seemed to be kind of fogotten amidst the buzz around RoR and functional languages. It is now on my queue of languages to check out (though it is a long queue...)
Posted by rafaeldff [Sun] ( November 11, 2007 10:31 PM ) Permalink | Comments[0]
links for 2007-11-10
-
Cool! Lots of bibliography and links to material on the Philosophy of Computer Science.
Posted by rafaeldff [Sun] ( November 09, 2007 10:30 PM ) Permalink | Comments[0]
links for 2007-11-09
-
The categorical dual of catamorphisms. Huh? Know fold (or reduce, or inject) from functional programming languages? It takes a collection of things and successively transforms those into one result. Unfold does the exact opposite.
-
Robert Martin criticizes the application of Rails Active Record to the model, as it implies too tight a coupling with the underlying database.
-
Michael Feathers discussing an elegant example of the Special Case pattern [Folwer, PoEAA]
Posted by rafaeldff [Sun] ( November 08, 2007 10:37 PM ) Permalink | Comments[0]


