Tools and Best Practices

It’s been 7 years since Panemu started its first day. We are young and agile. We always use best practices in our daily work, but never forget to challenge whether our best practices are still the best. We are excited for new technologies, IDE, tools, XKCD, etc. Even a humble news about “New Screencast Software for Ubuntu” improves the mood.

Not all staff in Panemu use the same tools, but here are what we will recommend:

  1. Ubuntu. Let’s face it, Linux is the best for software development, and Ubuntu is arguably the most popular Linux. We have several windows licenses as well for office administration and gaming.
  2. NetBeans IDE. We moved away from Eclipse and fall in love with NetBeans. The new contender is Microsoft VSCode. It is very good for angular development. But NetBeans with Everlaw’s typescript plugin serves our needs very well.
  3. Terminal. Git, MySql, tailing a log file, etc are done using terminal. There are UI’s to do all that but terminal is the best.
    ubuntu, netbeans, terminal
  4. Java EE 7. We used Spring before, now we content with Java EE.
  5. Apache Shiro with JDBC realm for User Authentication & Authorization. Its annotation feature dramatically simplify our web service API’s.
  6. Hibernate for ORM. Application we build support at least MySQL, Oracle, MSSql and H2 databases.
  7. Wildfly for Application Server. We choose it because we love Openshift.
  8. Maven, NodeJS, Chrome browser are other vital programs to build awesome software.

 

For development support tools, we use

  1. Jenkins, we can’t live without CI. Configure once, and then let testers create the build as often as they want. Programmers can code in peace.
    jenkins
  2. Gerrit. This make our code reviewers more annoying since they always catch nasty code written by the programmers. Our programmers are good, but sometimes we run out of coffee.
    gerrit
  3. Redmine issus tracker
    redmine
  4. Openshift for user acceptance test.

So, do you think you have better practices or tools to get the work done? Let us know.