AI Coding Zen and the Art of Context Management
Forget the perfect prompt - mastering context management is the real secret to productive AI-assisted development.
124 posts
Forget the perfect prompt - mastering context management is the real secret to productive AI-assisted development.
Keep your personal and work GitHub identities separate with SSH config tricks that route keys automatically.
My first Maven Central library: Free Cloudflare Turnstile integration for Spring Boot with zero CAPTCHA friction.
AI-powered translation keeps your Java message bundles in sync across languages without manual translation work.
Spring User Framework gets a major upgrade two years later with new features and flexible architecture.
Explore AWS Bedrock API, a direct competitor to OpenAI with Generative AI LLMaaS, and the implications of its Signature v4 authentication method. This article delves into the complexities and potential developer challenges posed by AWS's security-focused approach, highlighting the importance of simplicity and documentation in developer adoption.
HTTPS breaks LiveReload in Spring Boot - here's the WebSocket fix to keep hot reloads working over secure connections.
Spring Boot DevTools auto-restarts your app and reloads the browser - speeds up dev cycles significantly.
I have run into some issues getting Micronaut, GraalVM, and Native builds working correctly on my Apple Silicon M1 Max based MacBookPro. So I wanted to share what I've needed to do to get things working correctly.
Spring Shopify App Framework handles auth, webhooks, and REST/GraphQL APIs for building Java-based Shopify apps.
After 18 years of Eclipse, VSCode is faster, lighter, and better for modern Spring Boot development.
Flexible Spring User Framework cuts boilerplate on auth, registration, and password flows across projects.
QueueDoesNotExistException in Spring + SQS? Check your queue creation and region configuration first.
Wildfly 10 session leak traced to WebappLifecycleListener - a JBoss bug that needs workarounds for production.
Oracle Commerce Cloud: great idea on paper, but pricing and feature gaps make on-premise ATG still competitive.
Learn how to control your Nest Thermostat from the comfort of your command line with the Nest API!
Jersey-based REST module simplifies ATG REST service configuration with annotations instead of verbose setup.
JBoss doubles your Oracle connection pool size when separating transactional and non-transactional connections.
Eclipse, SVN, and heap dump analysis form the backbone of professional Java application development.
Cloud computing and VMs suit many workloads, but ATG hosting isn't one of them.
MobileMe to iCloud migration resent hundreds of calendar invites. Pro tip: verify your settings before switching email calendar systems.
Patrick McKenzie's SEO insights spark valuable Hacker News discussion on practical search engine optimization strategies.
Seeking WordPress plugin for managing draft notes alongside post content - research repository within the editor.
Twelve Factor App part 2: port binding, disposability, dev/prod parity, logs, and processes - critical for modern architecture.
I don't agree with the Twelve Factor App guidelines, and here's why.
Redesigning for clarity: reorganizing navigation and content to serve tech-focused visitors better.
Test legacy Internet Explorer versions on Mac and Linux without proprietary software restrictions.
Building a reusable Seam framework foundation for rapid application development with identity management.
Strategic approach to organizing static assets in ATG applications for maintainability and deployment.
First hands-on experience with Ruby on Rails reveals powerful patterns alongside framework limitations.
Stolen resume lands interview but fails immediately when ATG knowledge is required. Technical expertise can't be faked.
JBoss Performance Tuning book offers data-driven insights for optimizing application deployments.
ATG CSC Search engine brings configuration complexity and Mac incompatibility to profile and order lookups.
64-page guide to scaling ATG applications across hundreds of nodes with insights from AT&T's massive cluster.
ATG's new CSC UI looks modern but loads slower and confuses users more than the bare-bones interface it replaced.
Customizing ATG CSC UI is a nightmare compared to the straightforward JSP editing that Commerce Assist allowed.
ATG 9.1's CSC is bloated, complex, and dependent on too many moving parts compared to the simpler Commerce Assist.
JBoss JMS with XA datasources silently fails to create tables - here's the fix and what we learned.
Bad variable names and confusing method signatures make code harder to maintain - here are real examples.
Flush your ATG cache after deployments using a component triggered by Deployment Events to prevent stale data.
Eclipse templates save time and improve code quality by automating commonly repeated code blocks.
Google's speed optimization guidelines emphasize smaller code size, but avoid over-optimizing CSS at the cost of maintainability.
IE 7's JavaScript engine runs 10x slower than Safari 4, making it painful for AJAX-heavy interfaces.
Switching from Dojo to jQuery reveals how much simpler AJAX-driven interfaces become with a better framework.
Packt Publishing's "Seam 2.x Web Development" by David Salter is a practical guide to building web apps with Seam.
MSSQL with jTDS, NVARCHAR fields, and slow indexes - a learning curve for production deployments.
Seam MailSession fails with IP-based auth - configure environment-specific mail settings in components.xml.
SEO tools like SEOWorkers analyzer and Google Webmaster Tools provide keyword data and crawl insights for rankings.
Expressive URLs help both SEO rankings and user experience - avoid opaque query parameters in site structure.
Semantic HTML markup improves both search engine rankings and accessibility for users with disabilities - a win-win for web design.
Eclipse plugin updates failing? Add trailing slashes to repository URLs and reimport them to fix the "No repository found" error.
Search engines reward well-built, accessible sites that follow standards - forget gaming Google and focus on creating genuinely useful content.
Build custom RichFaces skins by extending default CSS instead of paying for expensive design overhauls to match your brand.
TicketMaster's error page is a masterclass in what NOT to do - no styling, no helpful info, and zero guidance for users.
Hide and show Dijit ContentPanes in TabContainers by saving widget references before removal and restoring them later.
Smush.it automatically optimizes your images without Photoshop tweaking - compress files and boost web performance instantly.
DZone's free RichFaces quick reference guide covers installation, core concepts, and every a4j and rich tag with examples.
Secure your mail server against spam using SPF, SenderId, Domain Keys, and DKIM - four essential anti-spam authentication standards.
Essential website launch checklist - a visual guide to avoiding critical oversights before go-live.
Preserve browser history for dynamic web apps - JavaScript-driven pages need URLs too.
Content delivery networks serve static assets faster from servers near users, doubling perceived performance.
Images and scripts kill load time - reduce file count, leverage caching, and watch metrics plummet.
Cache HTTP headers from JBoss using servlet filters - control what browsers keep and for how long.
JSPs are bottlenecks; cache content sections to cut generation time, free up threads faster.
100ms slower = 1% sales drop (Amazon). Half-second delays tank Google traffic 20% - speed is revenue.
Page load speed directly impacts user behavior - ATG apps need tuning across HTML, DOM, and assets.
ATG performance isn't magic. Proven strategies cut costs and lift conversions on complex e-commerce apps.
Yahoo Mail silently kills your emails despite clean records. Switch to Gmail and actually receive messages.
Free Seam cheat sheet from DZone - lookup annotations, schemas, and patterns in seconds.
Prevent form submission spam in ATG with JavaScript - disable buttons properly without breaking the handle method.
SSH_OPEN_ADMINISTRATIVELY_PROHIBITED error in Subclipse? Add -Dsvnkit.ssh2.persistent=false to eclipse.ini to fix it.
Accidentally deleted entire ATG installation with bad build config - Time Machine restored it from wireless backup in minutes.
Google's Protocol Buffers: XML binding but faster and simpler, with automatic parsing and serialization built in.
SSO bridge between JForum and Atlassian Crowd syncs user groups automatically - no separate forum login needed.
Web 2.0 promised innovation but delivered startups layering trivial value on others' data with zero revenue plans.
A corrupted repeating event spawned 12,000+ calendar instances, clogging iCal. TextMate regex saved the day.
ATG license validation checks /etc/hosts hostname mapping, not JBoss IP binding - counterintuitive and easy to misconfigure.
ATG development processes deserve documentation, but urgent projects come first.
Commerce sites demand speed, quality, and budget flexibility - pick two, but compromise intentionally.
Best practices guide for ATG development: starting assumptions, roles, processes, and quality delivery.
ATG project roles: client rep, PM, architect, analyst - a baseline team structure that adapts to your needs.
GWT In Practice delivers practical guidance for building advanced web UIs - and includes a real author endorsement.
HowGoodIWas beta lets ex-athletes reconnect, share memories, and relive competitive glory through social media.
ATG RSS Feed Droplet now supports configurable character encodings - reformatting breaks feeds, so beware.
Russell Moore figured out how to add upload image functionality to the ATG Commerce Center for custom binary properties.
RichFaces modal panels break in IE6 when using s:graphicImage - use a Servlet workaround instead.
Seam's Home object design pattern solves LazyInitializationException and entity manager scope issues.
Real IP addresses hide behind load balancers and proxies - use X-FORWARDED-FOR and the ProxyIPFixer servlet.
Apache proxy blocks RichFaces JavaScript - the ContextRoot/a4j path needs direct access, not load balanced.
Better Java image resizing for thumbnails - higher quality output with improved code based on feedback.
Oracle exp/imp inflates table sizes - INITIAL extent settings preserve old dimensions even after shrinking.
Drop all Oracle tables easily - generate a SQL script from querying user_tables, then execute it.
That convenient login redirect? It kills conversations. Here's why and how to fix it.
Automated image resize, thumbnail generation, and format standardization in Java - the practical way.
Let's say that when a user clicks on something, perhaps selecting something from a DataTable or DataGrid, you want to call some server side code, and then popup a modal panel which needs to show content based on the new state setup by your server side call. In my case I have a DataGrid showing a number of items, and when a user clicks on an item I want to set the current selected item on a Seam component on the server, and then popup a modal panel to display detailed information about the item, and provide the user some actions within the modal panel.
RichFaces wrecks Safari. One config line stops the crashes cold.
Open-source ATG modules for caching, encryption, captcha, and more - ready to integrate.
Batch-updated 1.7 million password hashes? PL/SQL loops with checkpoints beat direct mutations.
Manage cache headers by MIME type and URI pattern in ATG without custom servlet filters.
Eclipse crashes on Leopard? Add one JVM flag. Problem solved.
Getting Quartz scheduling to work with Seam proved tricky - here's what I learned navigating sparse docs and setup gotchas.
The essential pattern for safely updating ATG orders: lock management, transactions, and synchronization explained by an ATG architect.
Adding CAPTCHA protection to Seam forms takes three minutes - here's exactly how, including the build and config changes needed.
ATG's installer remains broken on OS X, but a single config.xml fix bypasses the platform limitations plaguing developers.
Emacs can edit files inside .war and .ear archives using archive-mode - add three lines to your config and edit deployments directly.
ATG's product explosion (Ticketing, Search, Merchandising, etc.) sells licenses but ignores the core platform issues.
XSS and SQL injection are the web's deadliest threats - ATG Dynamo helps but doesn't solve the problem completely.
Editing nested RepositoryItems in ATG requires programmatic tricks with RepositoryFormHandler subclassing - this approach works.
ATG Dynamo's StringUtils class quietly handles validation with isEmpty() and isBlank() methods.
JBoss Tools' properties editor looks great but strips equals signs - a quick fix prevents data loss.
Seam-gen now generates ant targets that run seam tasks directly from your IDE - no command line needed.
Enhancing seam-gen to support multiple projects.
Java constants use final and static modifiers for efficiency, memory safety, and compile-time inlining.
ATG RSS generator droplet transforms repository data into valid RSS feeds with customizable channel fields.
ItemToXMLDroplet converts repository items to XML for client-side JavaScript or Flash consumption.
Java One 2007 delivered overwhelming scale with thousands attending - but surprisingly, Apple laptops ruled sessions and hallways alike.
Expose Seam components through web services using the JBoss component model - no magic, just clean architecture and lifecycle management.
Third-party JavaScript on your site hands browser control to strangers - the security risks range from theft to phishing attacks.
SMTP remains unchanged since 1982, but modern email demands more - SMTPS finally brings security to this ancient protocol.
Email encryption needs mainstream adoption - major mail programs should ship PGP support by default.
Getting Seam projects running required custom setup; here's a reusable base project structure.
Tag URIs uniquely identify entities through time, but finding practical applications remains the challenge.
JBoss Seam unifies AJAX, JSF, and EJB3 to simplify Web 2.0 development with annotated POJOs.
New blog exploring technology insights from a Java and security architect's perspective.