Are engineers more productive if they have their own office. Have individual offices gone the way of the dodo? Would you prefer your own office if given the choice?
Development Links
Submitted by david on Thu, 07/15/2010 - 06:38
Here at translucent development, our goal is to provide tech geeks rose-colored glasses that allow you to determine what technologies you need to focus your attentions on. Keeping up to date is hard...but luckily we don't have to do it all on our own.
We are working to bring you the very best resources in the technologies that we feel should be on your radar including:
Under Construction. Please bear with us as we get these additional resources online. Thank You.
Here at translucent development, our goal is to provide tech geeks rose-colored glasses that allow you to determine what technologies you need to focus your attentions on. Keeping up to date is hard...but luckily we don't have to do it all on our own.
We are working to bring you the very best resources in the technologies that we feel should be on your radar including:
- Agile Development
- Java
- Web Frameworks
- Testing
- Content Management Systems
- Go
- Groovy/Grails
- Application Security
- Dynamic Languages
- JavaScript
- RIA Frameworks
- Mobile Development
- Design/HTML5/CSS
Under Construction. Please bear with us as we get these additional resources online. Thank You.
-
agile
-
Micromanagement, often has a negative connotation associated with it. It is a management style where a manager closely observes or controls the work of his or her subordinates or employees. Usually Agile development and micromanagement may seem to be opposite ends of spectrum however, they are more related than what meets the eye.agile
-
It is not easy for a bean counter to count intangible things, like lost productivity due to a noisy work environment yanking programmers out of flow.agile
-
I guess Mr James lives in a funny la-la world where there are millions of programmers just dying to work at your startup. When you are the founder of a company, you want to skimp on frills; they seem like a waste of money to you. That's fine. But don't think that candidates interviewing at your company will have the same emotional attachment; they won't. They are looking for a nice place to work.agile
-
This post is not about lame excuses. “nah the build shouldn’t fail, that was a trivial change…” does not count. But there are situations where a build fails because … well nobody really knows. Some people say: cosmic rays! But we know that is not true. To efficiently utilize a CI system without the need to troubleshoot a long time here some common issues we encountered and ideas how to mitigate them.agilebuild tools
-
Follow these steps and we will build a complete Android development environment from scratch, starting on a fresh Windows installation. The whole process should not take more than 20-30 minutes, provided that you have a good internet connection.androidmobile
-
Like many other programmers wanting to get into the smart phone market, I assumed the iPhone was the way forward. That is, until I looked into it. Back in July 2009, I decided to move my programming efforts towards the mobile phone and I explored my options.androidmobile
-
Let's face it...we all have to learn to write Ant scripts at some point in time. And often we have to re-learn a bit of it, because we use different build tools from time to time, or someone else on the team spends more time with the build scripts then you. I'm glad that this is put together as a reference. If you are knee deep in Ant, consider getting "Ant In Action", but I hope that you aren't knee deep in it! "For this tutorial however I will go cover what ant is primarily used for, building a project and creating a deliverable, in this case a jar file. This will provide a good intro into the usage of ant and how it works."antbuild tools
-
In any event, the overall team productivity related to builds and continuous integration often slows to a trickle. This trickle causes frustration, alienates people and discourages their interest and help, and costs the company money. It is clearly a bad, bad thing. Maven remedies this all too common situation and many others. Once a few developers use the Maven XML structure and understand what those tags do, they can jump from project to project, as business requirements deem necessary and immediately understand another project's build environment. That means they can build the software and start testing it right away. This efficiency translates into enhanced developer and team productivity and that means real money saved for the company.antbuild toolsmaven
-
Nevertheless Spring AOP framework comes with certain limitations in comparison to a complete AOP implementation, such as AspectJ. The most common problems people encounter while working with Spring AOP framework derive from the fact that Spring AOP is “proxy – based”.AOPspring
-
As a web developer it’s important for me to have a fully functional development environment so the first thing I had to do with the new install is get Apache set up and running as I need it. This post shows how to set up PHP, mySql, Virtual Hosts & .htaccessapachemac
-
Tomcat 7 is the first Apache Tomcat release to support the Servlet 3.0, JSP 2.2, and EL 2.2 specifications. Please note that Tomcat 7 requires Java 1.6 or better, but that shouldn’t be a problem if you are running OS X 10.5 or 10.6. Here are the easy to follow steps to get it up and running on your Macapachemac
-
The primary purpose of both this post, and my previous post on comparing Google AppEngine language performance is to show that while Google offer Java on AppEngine, the performance of Java Applications for low-traffic (or growing) sites may not be what you are expecting on day one.appenginegroovygrailsjava
-
At times I was involved in discussions where people of top brass where also present. I was having (and still have) little experience compared to them. I used to hear lots of terms which clearly and smoothly surpassed my head. I was at times amazed by listening about friction, surface area and all in software design talks.architecturedesigndesign patterns
-
Too often in our work as architects and designers we focus on the task at hand, seldom reflecting on the past. We should really know better, how else do you improve? This article summarizes six learnings from 55 months as an architecture team lead at Skype. Some of them will be technical while some will focus on softer aspects of an architects work.architecturedesign
-
Sonar is an open platform to manage code quality. As such, it covers the 7 axes of code quality: * Architecture and Design * Comments * Coding rules * Duplications * Unit Testing * Potential bugs * Complexity Sonar has got a very efficient way of navigating, a balance between high-level view, dashboard, TimeMachine and defect hunting tools. This enables to quickly uncover projects and / or components that are in Technical Debt to establish action plans.architecturedesign
-
In this particular case we might need to leave unit testing world (mocks, spies and other test doubles) and develop real integration tests. The SeamTest module together with JBoss Embedded could help but it's really a tough task to make it running with Maven. On the other hand JBoss AS wasn't the target environment for us. Thankfully there is a new kid on the block from JBoss called Arquillian.arquilliancditesting
-
My friend Dan Allen's presentation on using Arquillian and ShrinkWrap to really test in the Java EE container - Don't Fake It!arquillianjavatesting
-
Which CMS is best to use. Well, I found that I was only able to give good answers to that question after trying top CMS platforms. But do you even know which ones are in the ring? Before you fight out CMS to CMS you need to know who the players are, and a little bit about that to exclude those who don't offer the features and functionality you are after. Need a general overview. Debating ease of use versus functionality. One language over another. What to know which ones are completely Open Source versus one ones have a pay-for-premium model. This article will help you dig into the most popular CMS systems out there.bloggingCMSsocial media
-
I started to write this with Ant/Maven, and then switched to Gradle. I'll present few code snippets here, that should give you a decent understanding of difference that Gradle makes. Please judge for yourself if the switch from Ant/Maven to Gradle was worth the effort.build toolsjavamaven
-
I agree that Maven has its warts, but I don't think it's that bad. I've also heard that Maven has been successfully implemented at large companyies like eBay, Intuit and E*Trade[1]. Is the "Maven sucks" meme largely something that exists in the blogosphere, but not in the real world?build toolsjavamaven
-
I'm uncomfortable with the increasing number of build tools available for Java. At the beginning, everything was simple : Ant was here, and did its job. However, while Ant is very good at build customization, it had the cons of its pros: for each project, you had to copy parts of your ant scripts from another project, or create an Ant plugin. However, in every organization, or worse, every developer had its own way of building projects, organizing source code and so you could rapidly come with projects which used the same build tool, but in a totally different manner.build toolsgroovyjavamaven
-
Like advertised, maven 3 is backwards compatible with maven 2. In fact, most everything worked out of the box when switching to maven 3. In this post, I'm going to highlight the required and currently optional items I changed so you can start preparing to migrate your project to maven 3. But first, what's so special about maven 3 and why would you upgrade? Polyglot maven, mvnsh, and improved performance (50%-400% faster) are just a few. And since it's so easy to migrate to maven 3, you really don't have any excuses.build toolsmaven
-
The Hibernate team made it official when they recently switched the Hibernate 4 master branch on GitHub over to Gradle for its builds. Now is as good a time as any to learn how the Gradle build system works in comparison to Hibernate's earlier build system, Maven 2. If you're still wondering why the Hibernate developers decided to switch from Maven to Gradle, all you can do is read these explanations and see what other developers had to say in this StackOverflow thread.build toolshibernate
-
Understanding the role of CTO in a small startup CTO. From writing code, to hiring practices - knowing the do's and don's of a Chief Technology Officer in a startup firm.businesscareerstartup
-
As "Web 2.0" takes over, the role of software engineer is being re-factored as well. Gone are the days of the grey beards sitting in the corner....replaced with the convergence of technology and social media. BarCamps, meetups, learning followed with a little bit of happy hour.careersocial networkingsocial media
-
CodingBat is a free site of live coding problems to build coding skill in Java, and now in Python (example problem), created by Nick Parlante who is computer science lecturer at Stanford. The coding problems give immediate feedback, so it's an opportunity to practice and solidify understanding of the concepts. The problems could be used as homework, or for self-study practice, or in a lab, or as live lecture examples. The problems, all listed off the CodingBat home, have low overhead: short problem statements (like an exam) and immediate feedback in the browser.careerinterviewjava
-
Find out what customers ranging from small businesses to Fortune 500's have known since 2001. TopCoder's global community and unique model of competition-based development delivers higher quality results, faster and less expensively than has ever been previously possible.careerinterview
-
Dan Allen's presentation on how JSR-299 will impact SeamcdijavaSeam
-
I may be a Spring fanboy but I’m also convinced a technology should embrace standards. Although Spring is now a de facto standard, it is in competition with other products, like Google Guice for example. It makes my work as an architect harder since my craft is to devise the most perennial solutions: standards are my allies in achieving this goal. CDI, formerly known as JSR 299, is an attempt at describing a true standard on Dependency Injection. What makes CDI appealing at first glance is that both SpringSource and Google took a seat in the specifications team.cdijava
-
Digging in further to CDI, this entry talks about Producers, Interceptors, Decorators, Observers, and Alternatives. It also touches on AOP and testing a bit.cdijava
-
But it turns out--somewhat unintuitively--that if you inherit from a class that has an injection point in it--even if the injection point is defined in terms of Java EE and not CDI--and if that abstract class comes from a jar that is not a bean archive, then dependency injection by the CDI provider will not be applied to its injection point until you make sure that its jar file contains a META-INF/beans.xml file. A simpler way to put this is that for any given inheritance chain, all jars in the chain containing classes with injection points must be bean archives.cdijava
-
Going to go over the steps to get a simple HelloWorld web-app up and running on JBoss 6 using JSF 2 and CDI. Background information and full documentation for the technologies used can be found at the Java EE 6 home page and Weld documentation site.cdijavamaven
-
The Current State Due to Spring’s early success and adoption, Java EE 5 and Java EE 6 were pushed to greatly simplify the Java EE programming model, increase developer productivity and become much simpler to use than previous versions. The current Java EE 6 solutions are thus just now achieving the ability to compete against Spring's programming model. Developers now are ready to ask the question "Why you would prefer Spring?" Here is my take:cdijavaJPAspringweld
-
I do have some issues with Cameron's statements that frameworks are mistakes of the J2EE past and that Java EE 6 represents the future. Open source frameworks made J2EE successful. Struts and Hibernate came out in the early days of J2EE and still exist today. Spring came out shortly after and has turned into the do-everything J2EE implementation it was trying to fix. Java EE 6 might be a better foundation to build upon, but it's certainly not going to replace frameworks.cdijavaJPAJSFweld
-
Amazon has announced the new AWS SDK for Java this March. The aim of the new SDK is to simplify the development of java applications that are hosted on the Amazon EC2.cloudjava
-
Cloud computing offers the promise of virtually unlimited processing and storage power, courtesy of vast data centers run by companies like Amazon and Google. But programmers don't know how best to exploit this power. Today, many developers are converting existing programs to run on clouds, rather than creating new types of applications that could work nowhere else. And they are held back by difficulties in keeping track of data and getting reliable information about what's going on across a cloud.cloud
-
I know from personal experience that when I begin a web project it’s so easy to choose a Content Management System (CMS) that I’m already familiar with. Even more so, it’s easy for me to reach for the popular choice that’s already well established. Many times this reasoning works the best. In the past, I’ve tinkered around with Drupal, Joomla and WordPress, amongst a few others. All of them have their own distinct advantages and disadvantages. Recently, I’ve had a chance to give SilverStripe a test drive. While it’s not perfect, it is brilliantly developed and easy to use. In this post I’ll present 5 reasons why SilverStripe may be the best option for your next big project. * The Community * An MVC Approach * The CMS is Very Customizable * AJAX Style Site Tree * Quick Learning CurveCMS
-
OpenPublish is a packaged distribution of the popular open source social publishing platform, Drupal, that has been tailored to the needs of today's online publishers. OpenPublish is ideal for the implementation of a variety of media outlets. Developed by Phase2 Technology with the support of Thomson Reuters, OpenPublish is designed to leverage the power of Drupal as a social publishing platform, integrate semantic web technologies, and incorporate best practices from existing publishing sites.CMSsocial media
-
"One of the first questions a client will ask you when you are tasked to develop a website is “how can I maintain it myself”. It used to be a very daunting prospect to build in functionality allowing a novice to update their own website. Today, the only difficult part is deciding which CMS you want to use. When it comes to content management systems (CMS) and publishing platforms, there are more than enough to choose from and it all depends on what exactly you are looking to do. While many CMS’s are overly complicated and require a certain level of technical expertise you may not have, there are a growing number of light, scalable and intuitive content management systems that will help you develop a dynamic website your client can update themselves."CMS
-
Java Collections Framework contains most commonly asked Java interview questions. A good understanding of Collections framework is required to understand and leverage many powerful features of Java technology. Understand what the Collections API is, and really understand Sets, Lits, SortedSets, Maps, and SortedMaps. Understand the legacy collections, versus what was added in Java 2. What about concurrency? When should you still use Vectors? When should a HashTable be used over a HashMap? Understand the ins and outs of the Collections Frameworkcollectionsconcurrencyinterviewjava
-
With Java 7 (Dolphin), we’ll have some concurrency and collections updates with the JSR166y, extension of the JSR166 of Doug Lea. This post delves into the Fork/Join Framework, the TransferQueue
collection, and the ThreadLocalRandom class. As multicores become the norm, concurrency can no longer be a specialization, but needs to part of normal operations for all developers. collectionsconcurrencyjava -
"From many sides I hear that Drupal sites and themes are ugly, which is partly true, but I took a closer look at Drupal.org themes and handpicked 25 best designed Drupal 6 themes, to prove that Drupal can be beautiful even using standard themes that you can find on drupal.org website."drupal
-
Drupal is great with not only its flexibility, but also with how easily it can be customized to your needs by adding a free module from drupal.org. However, it could be overwhelming for beginners to find the modules that best fit their needs. Therefore, here is a little help.drupal
-
Drupal 6 offers built-in actions that can be performed whenever something happens on your site. Typically, you want to use this to get an alert when someone publishes content on the site, or a new user signs up. You might even want to mimic WordPress and get an email alert every time someone leaves a comment on the site. I’m going to show you how to set this up for your site.drupal
-
"There have been a number of language[s] coming up lately," noted James Gosling today at Sun’s World Wide Education & Research Conference in New York City when asked if Java was in any kind of danger from the newcomers. "PHP and Ruby are perfectly fine systems," he continued, "but they are scripting languages and get their power through specialization: they just generate web pages. But none of them attempt any serious breadth in the application domain and they both have really serious scaling and performance problems."dynamic languagesjava
-
Is Google not going to be the white knight that keeps Java advancing in a good direction?!? This link made me wonder just that.
Today's commercial-grade programming languages -- C++ and Java, in particular -- are way too complex and not adequately suited for today's computing environments, Google distinguished engineer Rob Pike argued in a talk Thursday at the O'Reilly Open Source Conference.Gojava -
...thinking about what the perfect programming language should look like. So Rob Pike’s talk at OSCON on the reasons behind Google’s Go came at the perfect time.
One of the main things that struck a chord with me in the talk was about type safety. Defining and initializing variables feels like bureaucracy. It’s like triple filling a credit card application form. And really, why is that necessary? Can’t the compiler deduce this duplicate information? Programming Java in a modern IDE makes that abundantly clear. Over half of what you type is generated by the IDE (autocompleted initializers and calls; getters, setters, who writes those by hand these days?)Go -
Simple is good... at least in theory. It seems to me that we always learn a lot when we do a good Spring Cleaning to repair what we need and throw out what we don't - but it also seems to me that we inevitably end up with as much junk as we ever had a few years down the road... Simple has a habit of getting complex very quickly.
I am sure the researchers who are working on Go are sincere, but I can't help thinking that Go might be just another reminder to others in the Software Industry - in this case Oracle - that Google won't be painted into a corner.Go -
Those in the know are aware that a Java web application can't be clustered unless it is marked as 'distributable' and Grails applications are not by default marked as such. The easy solution is to add the
element to the web descriptor, but you won't find a web.xml file in a standard Grails application. That's because Grails generates the web descriptor on the fly when it needs one. Fortunately, a web.xml that you can edit is only a command away. grailsweb frameworks -
An overview of Unit and Integration in the GWT environment using GWTTestCase, Junit, and Gwt-Test-Utils, a framework build to meet the following objectives: * Our test classes should not require any annoying loading time. * We should be able to manipulate the GWT classes directly, without intermediary interfaces that render the project more complex. * We should be able to use all the Java Standard APIs, specifically the introspection Java APIs (to use tools like Unitils). * We want something that is light and compatible with Maven.gwttesting
-
Hibernate and the Java Persistence API (JPA) are two leading technologies for managing the persistence and object relational mapping (ORM) of Java EE and Java SE applications. Hibernate's open source, lightweight and transparent framework simplified ORM by mapping database tables to persistent classes in XML files and generating the SQL script at runtime. JPA then made XML-based ORM much simpler by replacing the traditional XML mapping files with metadata annotation, enabling developers to persist the state of their Java applications to relational databases through metadata.hibernateJPA
-
We are constantly told that APIs built on REST have great advantages for distributed systems that have to be scalable. We are told this by speakers at conferences, by various blog writers that we read, and even by wikipedia. And then somewhere, they lose us. They start talking about Representational State transfer, and the transfer of "representations" of "resources". And somewhere in there they lose most people in the language they choose to describe what REST is.javaREST
-
An article showing you how to create a: * Spring 3.0.3.RELEASE application * that is a desktop application (no application server/servlet container required) but might be deployed to a server too * and that connects to a database (HSQLDB) * using JPA 2.0 * without using provider specific code (such as Hibernate) in Java files * and that allows for declarative transaction management (next article).JPAmavenspring
-
"Like advertised, maven 3 is backwards compatible with maven 2. In fact, most everything worked out of the box when switching to maven 3. In this post, I'm going to highlight the required and currently optional items I changed so you can start preparing to migrate your project to maven 3. But first, what's so special about maven 3 and why would you upgrade? Polyglot maven, mvnsh, and improved performance (50%-400% faster) are just a few. And since it's so easy to migrate to maven 3, you really don't have any excuses."maven
-
Well, I've worked on Seam and RESTEasy integration last year, so this would be the comfortable option. The problem is: I know this stuff, so it's a safe fallback - I can always use that combination if everything else fails. But the grass always looks greener on the other side. So I definitely want to look at other solutions first, see what they have to offer. Also, Bill just now started talking about a non-servlet deployment option for RESTEasy, which is what I'd use.REST
-
In the Java™ world, you can build a RESTful web service in several ways: Some folks use JSR 311(JAX-RS) and its reference implementation Jersey, others use the Restlet framework, and some might even implement from scratch. Spring, the well-known framework for building Java EE applications, now supports REST in its MVC layer. This article introduces the "Spring way" to build RESTful web services. Learn how to use Spring APIs and annotations to build RESTful web services, and see how Spring integrates this new feature seamlessly into its original framework.RESTspringSpringMVC
-
In this showcase you'll see the following in action: * The simplest possible @Controller * Mapping Requests * Obtaining Request Data * Generating Responses * Message Converters * Rendering Views * Type Conversion * Validation * Forms * File Upload * Exception HandlingSpringMVCweb frameworks
-
Django, however, has such a specific feature set that is so symbiotic with the type of business applications many Java developers develop every day that it deserves special attention. Specifically, Django has a killer feature that makes it worthwhile for Java shops to leave the comforts of the Java language: its automatic admin interface.web frameworks
-
If you think you know Java Web Frameworks, and aren't familiar with Matt Raible, I say you've got some reading to do! Matt gives us a Great 2-for-1 special in this post with Comparing Kick-Ass Web Frameworks and The Future of Web Frameworks.web frameworks
