Java and tools
Articles
- Hazelcast under the hood
- API Gateway, a Doorway to the World of Microservices
- ORM as the Vietnam War and how to stay sane
- Kotlin
- The language doesn’t matter
- CZJUG Prague — The gateway to microservices and how to stay sane in the ORM Vietnam War
- jOpenSpace 2017
- Scalability on paper, bcrypt and debugging Zonky's performance
- CZ Podcast 159 — Hazelcast, an in-memory grid
- CZ Podcast 115 — Kotlin
- CZ Podcast 107 — Erlang
- CZ Podcast 104 — Akka, Spray, Play
- Ten years that did not shake the Spring Framework
- Eclipse, IntelliJ IDEA and my journey there and back again
- CZ Podcast 90 — Writing low-latency applications in Java
- CZ Podcast 89 — MapDB
- CZ Podcast 83 — Ceylon
- CZ Podcast 78 — Clojure
- Static typing with marker interfaces versus annotations
- Dependency injection is about more than easier testing
- Writing Jenkins Plugins
- Locks and a Two-in-the-Morning Wake-Up Call
- Self-tests
- The idea of a hybrid language
- Five plus one absurd reasons the JDK lacks JSON support
- Watch out for minor Java updates
- Spring Framework training materials
- MongoDB for Java Developers
- Technology and nontechnical criteria
- Java with its finger on the pulse
- Avoid Map and String in your class interfaces
- Another step toward continuous delivery
- Notes from Devoxx 2011
- MongoDB — A comment on recent developments
- Application vs. service vs. library
- Why it’s hard to write thread-safe Java code
- A five-minute introduction to Mockito
- Dependency injection is a means, not an end
- Visitor in practice
- A short guide to code review
- Designing from the wrong end
- Monitoring Java applications in the cloud
- Oracle has decided to let NetBeans die
- CZ Podcast 45 — News, JavaFX, and Ruby on Rails 3
- Presentation: NoSQL databases from a Java developer’s perspective
- What tests taught me about my code
- Building everything together versus independently releasable components
- Maven Content Check Plugin — Keeping JARs under control
- A few thoughts on tests
- Why Use an Interface Together With an Abstract Class?
- CZ Podcast 42 — Letters, Java, and life and work in Silicon Valley
- Keeping Maven project files tidy
- Live by the sword, die by the sword
- Fail fast with a meaningful exception type
- CZ Podcast 40 — Java as the COBOL of the Corporate World
- The story of a URL
- Eventually consistent
- CZ Podcast 36 — Concurrency
- Clouds, sunshine, or a cozy little world for Java
- Key-Value Databases
- Away with singletons
- Why I Don’t Need Asynchronous JDBC (Yet)
- Oracle’s Acquisition of Sun Is Done and Confirmed
- Eclipse E4 — The best rich client platform
- CZ Podcast #33 — Reloaded
- Open debate: when does ORM make sense?
- Is the anemic model a poor relation of object-oriented design?
- Class libraries vs. component libraries
- Presentation — Java EE 6 and its relationship to Spring Framework
- Dependency Injection Frameworky
- The dependency injection controversy, or how two groups can do the same thing differently
- Open debate: small self-explanatory methods or large methods with comments?
- Google App Engine and the end of Java hosting?
- Maven transitive dependencies from a module design perspective
- NetBeans 7
- IBM is courting Sun
- A universal language? No, thank you
- What matters in a build tool is efficiency
- Instant IDE
- Mocking beans in Spring
- A quick reminder about assertions
- Leaking streams
- Advanced annotations
- For debate: documentation annotations
- AJAX reloaded
- Unresolved questions about the Servlet specification
- JBoss Microcontainer
- I lost my temper again
- G1, a new garbage collector for Java 7
- Sun downsizes
- Spring acquires Groovy and Grails
- I don't trust JSF
- Spring's next steps in enterprise Java
- Eclipse tips and tricks — Static imports
- The God object problem
- Java SE 6 Update 10 is out
- New APIs for files and other I/O
- The trap in clone
- Spring Framework presentation — Enterprise Java with a human face
- Why Use the @Override Annotation?
- Open debate: should we use every trick in the language?
- IoC anti-patterns beyond Spring
- CZ Podcast volume #26 — JavaFX
- A Generic DAO for Hibernate and JPA
- When are enums equal?
- A little about API design
- Synchronizing access to objects in an HTTP session
- When a cash machine boots
- Protocol Buffers — A binary protocol beyond RPC
- Taking inspiration from dynamic languages
- Eclipse Ganymede is out
- An OSGi update
- Programming in XML — Spaghetti code squared
- PreparedStatement performance
- Ten tips for Java applications that scale well
- CZ Podcast 23 — JavaOne afterthoughts
- Effective Java — The second edition
- Even more static
- Go! OSGi Go!
- SpringSource Application Platform
- CZ Podcast 22 — Groovy and Grails
- Maven 2.0.9 pins core plug-in versions
- Can Google App Engine solve Java hosting?
- Java SE 6 Update 10 focuses on the user experience
- A little schizophrenic
- A more native look and feel for SWT applications on Windows Vista
- Do you use getClass or instanceof in your equals method?
- The first draft of the EJB 3.1 specification is out
- Krusader commander and handling WAR archives
- Automatically collecting objects of a given type with Spring
- Open debate: component-based or request-driven web frameworks?
- Looking for the next big thing
- What persistence tool do you use?
- Seam everywhere
- Spring IoC and the trouble with mixing apples and pears
- Maven Is Pretty Good
- Has SpringSource gained influence over the runtime?
- EJB 3.1 — Simpler still
- January’s CZJUG is here
- A different view of the BEA acquisition
- Acquisitions — Sun buys MySQL and Oracle is set to buy BEA
- More Projects Move to Distributed Version Control
- Mobile grids and data grids
- The art of Javadoc
- Closures — Really, no thanks
- On complexity
- Sharding — Split up your data
- Unnecessary skepticism about scripting languages
- Open debate: checked vs. runtime exceptions
- Eclipse tips and tricks for incremental packaging
- Change the infrastructure, not the language
- Dependencies in Maven
- Spring 2.5 is out
- November CZJUG — Why stay home?
- The Android Case
- Spring != XML
- We need powerful tools
- Spring Web Flow or JBoss Seam?
- The fuss over Spring’s speed
- An amphibian called Eclipse RAP
- A REST
- Off topic — Programming takes no great intellectual effort
- Lessons in scalability
- A grid for tests. Pipe dream or reality?
- Will J2EE change its face?
- NetBeans 6.0 Beta 1
- Open debate: leave code review to automated tools
- CZ Podcast 16 — Introducing Maven
- Spring 2.5 — Annotation support, a testing framework and more
- Ten tips for writing code efficiently
- Eclipse tips: keyboard shortcuts
- Source code online
- Certification — No, thanks
- Is OSGi the Key to Extensible Applications?
- The Java Kernel VM is coming in Update 4 for JDK 6
- Programming puzzle: dates
- Implicit versus explicit propagation of context in APIs
- JUnit 4.4, a hammer for tests
- Legacy databases and ORM tools
- Extensions to the concurrency framework
- J2EE 6 takes a step in the right direction
- Eclipse tips: generating toString
- Seam 2.0 is here
- Servlets — What’s ahead, we hope
- The next CZJUG is just around the corner
- Some slightly older Spring news
- Synchronization, the Java Memory Model, and other tricky bits, part two
- Synchronization, the Java Memory Model, and other tricky bits, part one
- Popular antipatterns
- A podcast about the desktop
- Theory and practice in the J2EE world
- What can wreck the performance of your J2EE applications?
- A closer look at Consumer JRE
- CZ Podcast number 11
- Open debate: are persistent collections a necessity or a feature?
- Applets return to the stage
- JavaFX rides the RIA wave
- Creating your own threads, a practice J2EE forbids
- CZ Podcast volume #10 — News
- The king is dead. Long live the king. Struts 2?
- CZJUG evolves — Workshops and code camps
- The cost of developing in Java
- CZ Podcast volume #9 — News
- Here come the comets
- Get Ant into your bloodstream
- Programming puzzle — The enhanced for loop
- Weekend links
- Javadoc in HTML Help format
- Java Module System
- What exactly is SOA?
- ORM podcast special
- Weekend links
- Free books on Java
- Care for some juice? We have Google Guice
- Eclipse Jazz
- Recording of a talk on Spring 2.0
- There’s still movement in desktop Java
- Syntactic sugar in Java 7
- Inside the class loader
- Project Phobos — A proof of concept, for now
- CZ Podcast 5 — iPhone, J2EE second service
- Design by contract
- Podcast volume #4 — No fake reindeer
- Anemic and full-blooded IoC, EJB vs. Spring
- The Basics of Deploying Web Applications on Tomcat
- Java 6 — what makes it faster?
- Java 6: What Makes It Faster? A Microbenchmark
- Eclipse Tips: Ant Builder
- Podcast volume #3 is finally out
- Seam 1.1 — more than EJB 3.0
- Java SE 6 is out
- Java Web Frameworks
- Setting Up a JBoss Cluster Step by Step
- Java suffers from a shortage of hosting
- Podcast volume #2 is out
- November 2006 CZJUG — Java EE 5 and testing frameworks
- More fuel for the IDE wars with JBuilder 2007
- How were the Sun Tech Days?
- A Flash demo of WTP
- Open-source Java under the GPL
- The Czech Java podcast is here!
- Transparent Caching with Aspect-Oriented Programming
- October Java puzzles
- The October JUG is almost here
- Eclipse’s little details — My tasks
- NetBeans 6.0 promises a usable editor
- Eclipse Data Tools Platform
- EJB 3.0 + JSF = JBoss Seam
- Sun Tech Days
- Annotation hell?
- Generics at the CZJUG meeting
- The trouble with standards — when less is more
- Google Web Toolkit
- The creator of Struts and JSF at CZJUG on September 26
- The first CZJUG meeting
- Java 7, the Java kernel and JRuby
- JUG — preliminary schedule for 2006
- Closures in Java and the revolt of the functions
- The Czech Java User Group is here
- Declared Runtime Exceptions: The Best of Both Worlds?
- Sun drops code names for Java products
- Welcome changes in JDBC 4.0
- Sun Tech Days returns to Prague
- Lazy loading in ORM tools
- Hewlett-Packard buys Mercury, which had acquired Systinet
- Three-tier architecture in a nutshell II: designing the middle tier
- Keeping up with Java through podcasts
- Swing and SWT on Microsoft Windows Vista
- JDK 6.0 (Mustang) comes with a database
- Auto-Install — Another step toward usable desktop Java
- It’s time for the multitasking virtual machine
- A talk on NetBeans and J2EE at CTU
- A programming puzzle
- An overview of the NetBeans talk
- An hour-long talk on NetBeans
- Java will go open source
- A licensing change for the JRE and JDK
- A presentation on the iBATIS Data Mapper framework
- Why I Switched from Eclipse to NetBeans and Back Again
- Eclipse tips: remote debugging
- Weekend links
- Weekend links
- Spring goes on the offensive
- A few pieces of nonsense about Java
- Java 5.0 (Tiger) and Java 6.0 (Mustang) performance compared
- Tip: Teach PSPad to Run XSL Transformations
- For whom the bell tolls
- J2SE 6.0 enters beta
- Borland is getting out of its IDE products
- Sun may directly support the Czech Java community
- A JDBC memory leak for 5.50
- The height of inefficiency
- The Template Method pattern and its use in JDBC
- 2006
- Chosen for a usability test
- Usability tests for Java Studio Creator in Prague
- Java yesterday, today and tomorrow
- Simple protection for web forms with Jcaptcha and Spring MVC
- Java Studio Enterprise 8 and Java Studio Creator are free to download
- … and where to go from here
- Mini-tutorial: developing JSPs and servlets with Eclipse and Tomcat
- Database scenarios for integration and unit tests
- Spring Framework series
- Eclipse 3.1 and Support for Generics
- Eclipse tips: opening classes and other files quickly
- JavaForge, a SourceForge Alternative for Java Projects
- Using continuations to build web applications
- Java: Character Encoding
- Advanced studies in naming temporary variables
- The view layer comes of age — JavaServer Faces vs. Tapestry
- FastRPC — Binary XML-RPC
- How to detect bean property in JSTL?
- Watch out for this jTDS setting on MSSQL 2000
- Memory leaks in Java
- Pisces — Complex test scenarios
- Articles for the weekend
- Microsoft releases a brand-new JDBC driver
- Luntclipse — Luntbuild Eclipse Plugin
- Eclipse 3.1 followed by Web Tools Platform 1.0 M5
- Looking for a Swing HTML renderer
- A feature matrix for portals
- What’s happening with Java IDEs?
- New Java 6.0 Mustang features shaped by JSRs
- Apache XML-RPC 2.0, Luntbuild 1.2 and XMLBuddy 2.0.57 are out
- End users can modify JDK 5.0
- Over to you. Should we move to Java 5.0?
- Using SSL with JBoss/Tomcat: key pair selection
- A GUI alternative to Keytool
- Keeping your sanity with Ant
- Ant, java.io.IOException: CreateProcess and That Darn Command Prompt
- Eclipse 3.1 M6
- Luntbuild gets ready for version 1.2
- Downloading Source From CVS Behind a Firewall
- Briefly: Hibernate 3.0 released
- Tomcat 5 supports JMX and can run as an embedded server
- Concurrent data modification in web applications
- Thoughts on writing and saving lines of code
- How I introduced continuous integration at work, part II — Luntbuild
- Hibernate 3.0 RC1
- Cartoon — The Nature of Persistence
- An easier life with EJB
- ORM with iBatis SQLMaps
- EJB 3.0, Interceptors and Spring
- Find Java writing on Interval.cz
- Translating technical terms for Java developers and everyone else
- jTDS JDBC Driver 1.0
- How I introduced continuous integration at our company
- Debate — App server caching
- Re: EJB, or one rather detailed comment
- When should you use EJB?
- What to do when an Eclipse plug-in doesn’t work
- Hibernate 3.0 in beta
- Jzonic Yawiki is getting Czech-language support
- db4o — A database and a persistence framework in one
- Do you know about Hot Code Replace in Eclipse?
- Terms, impressions, and promotions in the J2EE vs. .NET debate
- Getting started with Eclipse plug-in development
- Weekend reading
- Sun Java Plug-in Vulnerability
- Ant and a little compilation trap
- A closer look at Jetspeed 2
- Weekend reading
- Eclipse tips: JUnit support
- Programming puzzle
- More configurator than programmer
- Weekend reading
- Gavin King on Hibernate 3 and more
- Eclipse tips: custom templates
- Programming puzzle
- Weekend reading
- Threading homework — The dining philosophers
- I envy Czech .NET developers their Microsoft support
- The ABCs of Synchronization for Intermediate Readers
- Migrating to Java 5.0 — Reality or wishful thinking?
- Java 5.0: Tiger is out
- Jetty 5.0.0 and the next generation on the horizon
- A standard persistence layer for Java
- Eclipse 3.0.1 and Visual Editor 1.0
- A quick look back at the week
- JBoss 4.0 is out
- The basics of Java collections
- Comparing Eclipse, NetBeans, IntelliJ IDEA and JBuilder
- JDOM 1.0 is out
- Java vs. .NET conference
- Spring expands its support for aspect-oriented programming
- A busy week at Jakarta as Tomcat 5.5 and Struts 1.2.2 come out
- What throwing an exception actually does to Java performance
- Articles for the weekend
- Java — Documentation at your fingertips
- Tomcat and the Encoding of External Files
- ADF Faces brings Oracle's GUI components to JSF
- Internationalization for web applications
- Java coding conventions
- jTDS 0.8.1 was a long time coming
- Java Technology Concept Map
- Looking for a framework for print output and more
- A Spring tutorial in Czech
- Eclipse launches the Web Tools project
- JBoss gets a J2EE license
- Java XML processing: SAX versus DOM read performance
- State and interaction testing
- Spring mania
- Benchmarking servlet containers
- Sun Multi-Schema XML Validator and schema compilation
- JavaOne — J2SE 5.0 (Tiger), J2SE 6.0 (Mustang), and J2SE 7.0 (Dolphin)
- Eclipse 3.0 is out
- Editorial
- Hibernate Synchronizer — Hibernating in Eclipse
- J2EE patterns: DAO and data-source isolation
- Tiles — Smart templates for JSP
- A whirlwind tour of ORM
- Persistent problems in the persistence layer
- Where and how to get started with Java
- A Bug in the Microsoft SQLServer 2000 Driver for JDBC?
- Getting started with Java: what you need and how to compile and run a program
- A couple of J2ME questions for developers
- Editorial and weekend reading
- J2EE patterns for inversion of control and dependency injection
- The big players oppose JDO
- Good advice is worth its weight in gold when improving code
- Java Code for Multiple JDK Versions
- Why java.util.Properties Isn't Safe
- J2ME — The START 2004 competition
- Distributing the JRE
- Setting the JAVA_HOME environment variable
- Sources of information on Java
- Weekend reading
- Comparing strings in Java
- The IDE rivalry continues as NetBeans adds more improvements
- The Eclipse discussion forum
- Sun’s desktop system
- Tips for speeding up JDBC applications
- Sun and Microsoft bury the hatchet
- jTDS JDBC Driver 0.8-rc1
- Eclipse 3.0 M8 — Another step toward perfection
- J2EE framework Spring
- JavaWorld is back
- Weekend reading
- Testing servlets, JSP pages and filters
- Java everywhere — 1.5 billion devices running Java
- Groovy, another programming language for Java
- Eclipse in book form
- Weekend reading
- J2ME — Benchmarking mobile phones
- Back to the future — Code editors or IDEs
- NIO and servlets
- IBM presses Sun. Will Java go open source?
- Load testing with Apache JMeter
- Sun, Java and open source
- Desktop applications in Java: pipe dream or reality?
- Chrysalis, a new web framework
- Servlet 2.4 and JSP 2.0 in practice
- I got it through the tunnel!
- FindBugs 0.7.1 release
- EclipseCon 2004
- Programming means writing tests
- Weekend reading
- J2SE 1.5 beta 1 is out
- Translets — Super-fast XSL transformations
- jTDS JDBC Driver 0.6 released
- Articles for the weekend
- The Lomboz J2EE plug-in is freely available
- Struts by example II
- Java — A performance test
- JavaServer Faces is on its way
- Weekend reading
- TheServerSide opens a site for .NET
- The ambitious Sun Java Desktop System project
- Does Java need to change?
- Plans for the Eclipse 3.0 milestone
- Getting started with Robocode
- Caching and web applications
- Javadoc for free
- Enter the tiger — Java[tm] 2 SDK, Standard Edition 1.5.0 Alpha
- The Apache Logging Services project
- Struts, a worked example
- Flex and Web Application Frameworks
- The MVC Design Pattern
- Comparing Java and .NET platform security II
- Robocode — Learn Java by playing
- Weekend reading
- Bug patrol and the systematic search for defects
- Programming LEGO sets
- A few links
- Comparing security on Java and .NET
- Weekend reading
- The big Java encyclopedia
- Articles for the weekend
- JBoss vs. ASF — The row continues, with Jetty next up
- Unraveling Java class loaders
- What Sun Tech Days in Prague was like
- A note from the editor
- The Singleton and the ClassLoader Problem
- Java Tiger in focus
- What the week brought
- Cocoon for web applications
- Jakarta Struts in action
- Internationalization in a servlet
- A few items from the week
- A closer look at bytecode
- The Singleton and the problem of double-checked locking
- Java vs. C#
- The PHP scalability myth
- What makes a good middle tier?
- Beware of exceptions
- A big occasion in Prague: Sun Tech Day
- What you don’t know about the Java platform
- Swing versus SWT
- Czech blogs about Java
- A quick look at what the day brought
- Getters and setters are a bad habit in OOP
- Inheritance vs. implementation
- Java Servlets — Session tracking
- A gateway to portal technology
- Intel backs Java
- A closer look at the Servlet 2.4 specification
- Essential knowledge in object-oriented technology
- J2ME, MIDP 2.0 — What it will bring
- Java roadmap
- Fundamentals of data structures and algorithms II
- Jonathan Simon: Scripting beyond XML
- Java Tiger on the horizon
- Ten hot tips for Java and XSLT
- A Brief Introduction to Java Servlets
- Into the world of version control with Root
- The Servlet 2.4 specification is on the horizon
- Garbage collection optimizations
- A practical look at Java exceptions
- When to catch exceptions
- Weekend reading
- Comparing J2EE and .NET performance
- A second look at J2EE and .NET
- The heavyweights in action, or J2EE and .NET
- A change of brew and a few good articles
- Eclipse and the others
- Proceedings of the Objekty 2002 conference
- Testing with JUnit in Eclipse
- Java documentation in HTMLHelp or WinHelp
- Java memory hogs, or why too much of anything is bad for you
CZ Podcast
- #3 · Java 6 SE, Vývoj webových aplikací
Dagi and Filemon discuss Java 6 and web application frameworks. · Czech audio
- #1 · Vývojová prostředí v Javě
The first CZ Podcast episode looks at Java development environments. · Czech audio