Skip to main content

Posts

Showing posts with the label Agile

Physical meetups transition to online webinars in 2020

 Prior to the UK lockdown in March I was pretty active attending various tech meetups in the north west, we were even in the final stages or preparing for hosting the first Liverpool Tech Talks scheduled for the end of March. Obviously that was cancelled as the pandemic was taking hold in the UK and all face-to-face meetups have been cancelled ever since. I knew quite a few of them went online to become virtual meetup events but for me a large part of attending the meetups is for the social side, the pre and post discussions with the speakers and other attendees. I attended a few as a spectator and found them good but not as good as the real thing but something that I was interested in was being a panelist so that I could be part of the discussion. Luckily for me The Very Group are active in the 'early talent' area, and have great ties with the University of Liverpool. Our early talent partner reached out to ask if my awesome colleague Ben Kadel and myself would be interest...

Lancashire Tech Talks #8 - Digital Transformation with DevOps, Docker and the Public Cloud

The 26th September saw the return of Lancashire Tech Talks a meetup group run by  Andy Norton and HoiYen Sihapanya in Blackburn. The topics were Docker and migrating to the cloud. HoiYen has been involved with running all eight of the meetups and as I've recently taken over the Liverpool Software Architecture meetup I was keen to pick her brains about how to run a successful meetup evening. Some beers and soft drinks were on ice when we arrived and lots of people were stood around in small groups catching up with old work colleagues or just networking to make new friends.  After a brief introduction and run through of the format of the evening it was time for the first talk. Docker: Lies to Children - Jamie Taylor Jamie's talk was on DevOps and Docker. He ran through where DevOps has come from, explaining about the  Toyota Production System ,  Kaizen  and The Three Ways  as techniques to help speed up learning and improving processes. ...

ExpertTalks Manchester - Secrets of an Agile Transformation & Obstacles of Digital Transformation Evolution

It was a busy week for me this week with two meetups that I was planning on attending. The first was on Tuesday over in Manchester hosted by Equal Experts  on agile transformations.  The weather was horrendous although it brighten up by 4pm. Drove off to Burscough Bridge station on the Manchester line, bought my ticket only to be informed that the train to Manchester was cancelled. Suggested that I could get a different train on a different line if I drove to Bursough Junction station so off I went. Found out when I got there that this particular train was also cancelled and that I'd have to drive to Wigan to ensure that I could get a train into Manchester. I had planned on being there around 5:30 however I didn't get to the meetup until just after 6:30. This meant that I'd missed the drinks/food/networking that occurs before the talks and walked in with the first talk already in progress! Obstacles of Digital Transformation Evolution - Ryan Bryers Ryan's talk wa...

ExpertTalks Liverpool - Let’s Talk Automation Strategy & Making Testability Our Mission

On Tuesday evening I attended an " ExpertTalks Liverpool " event organised by Equal Experts . They run a number of meetups across the UK and this was the third one in Liverpool. The evening started with an open bar (with some lovely craft ales available) and some sandwiches and wraps. First up was Samuel Durand with a lightning talk on "Making a SAAS", discussing the challenges when converting an in-house application into a multi-tenant 'service'. To be honest there was a huge amount of information presented in a very short amount of time so it was hard to keep up! He covered how you need to identify the differences in your clients and your processes to ensure your application can be configurable enough to cope.  The storage of personal data and GDPR was covered not only in how the data is stored but also that you need to consider what personal information may be written to log files, etc. and the access controls that you need in place.  What kind of ...

Lancashire Tech Talks #7 - Behaviour Driven Development, AI For Ordinary Folk & The Mobile Is Dead

At 6pm on Thursday evening I attended the seventh Lancashire Tech Talks  ( @LancsTechTalks ) based at Graham & Brown in Blackburn. It was a tech meetup entitled " Behaviour Driven Development, AI For Ordinary Folk & The Mobile Is Dead " with three guest speakers and they also provided food and drinks. Graham & Brown have a great conference room big enough to seat over a hundred people and there were not many empty seats once the talks had started. The room is nicely decorated (not surprising really considering Graham & Brown are a wallpaper and wall-covering company) but the room was also light and airy. When I arrived there was a good buzz in the room with people conversing in small groups, and the organisers and speakers setting up. Cold soft drinks and beers were provided and what I particularly liked was that recycling of the cans and bottles was being encouraged. The evening started with the organisers introducing themselves and plotting o...

Summary of December's Manchester Spring User Group Meeting

The December Spring meeting was held on Tuesday 1st December at the same venue as previous meetings . Two talks were lined up: one on Grails by Adam Evans and one on Spring 3.0 by Rick Evans. Guy Remond of Cake Solutions started the evening off with introductions and explained that the Spring User Group was going to be expanding to become the 'Open Source Central User Group' so as to attract a more diverse audience. He also discussed the Open Source Central website which has plans to become the 'Hub for successful Open Source Enterprise Application Development'. It's going to pull various blogs together into one central place as well as offering video and podcasts of open source technologies. We were also some of the first people to get a physical copy of the Open Source Journal, a 5,000-copy print run (sponsored by Hays IT ). Practical Grails Demonstration by Adam Evans of CTI Adam started his presentation with a brief run through of what is Grails , w...

Don't miss the December Manchester Spring User Group on Tuesday 1st December

There was a little doubt recently if this event was going to take place as the main speaker had to pull out at the last minute.  We now have a new and excellent speaker Rick Evans talking about Spring 3.0 - Weapons for the War on Java Complexity". Doors open at 6pm and the main keynote normally starts around 6:30 (a chance for coffee and a chat before hand).It's in the usual place , just don't forget to register if you plan on going! Technorati Tags: Manchester , Spring , User Group , Andrew Beacock ,

How to disable the auto-completion 'bell' in Cygwin (using RXVT)

If you have ever hit TAB a few times in bash (via RXVT) you will probably be greeted with the loudest 'bell' your PC can muster. After a while this gets pretty annoying so here's how to disable it if you are using RXVT inside Cygwin (this might work for other Cygwin terminals, I've just not checked) Navigate to your home directory (normally just by typing cd and either edit or create a file called .inputrc Add the following lines to the .inputrc file: # Disable the annoying bell set bell-style none Save the file, close the terminal and reopen - you should now be bell-less! Technorati Tags: Cygwin , RXVT , Andrew Beacock

The next Manchester Spring User Group meetup is 13th October

Details of the next Manchester Spring User Group meeting are now available, as a taster for what it could be like I blogged about the last meeting . It looks like the main talk is going be from Jonas Partner on Spring Integration . It's a 6pm start in the usual place (there's a lovely space-age building where the building site is on Google maps...) Remember there's free parking if you pull up to the barrier and mention the Spring User Group. Hope to see you there - if you see a skinhead with glasses please come over and say hello! Oh and make sure you register to be guaranteed entry! Technorati Tags: Manchester , Spring , User Group , Spring Integration , Jonas Partner , Andrew Beacock

Summary of August's Manchester Spring User Group Meeting

The August Spring meeting was held on Tuesday 11th August at the same venue as June's meeting . The location was the the excellent University of Manchester Core Technology Facility which has free parking immediately outside the building, just press the buzzer and mention the Spring User Group and they let you in. The evening was introduced by Guy Remond of Cake Solutions who laid out the agenda. The first talk was by Cornel Foltea of Cake Solutions entitled: Hello World! (OSGi debugging in IDEA) Cornel started out by giving a little overview of OSGi including a walk-through of the layered approach that the Open Service Gateway Initiative takes. He pointed out that it's key objectives were: modularization versioning services access control The key component of any OSGi system is a ' bundle ' which get deployed into an OSGi container. A bundle can then be dynamically installed, started, stopped, updated and uninstalled. They are modular in nature 'assuming noth...

A great answer to the "What is Agile?" question

My friend David Draper has just posted a great response that he gave to a potential client recently in answer to the dreaded question "what, in a nutshell, does agile mean?" Check out David's blog for his answer . Technorati Tags: Agile , David Draper , Andrew Beacock

Better Java Dates, Times & Calendars with Joda-Time

Anyone who has used Java to manipulate Dates will know that it's one of the most frustrating parts of the core APIs - it should just be so easy! As an example, here is one way to create a 'date of birth' Date - in this object we want the time part of the Date to be all zeros (midnight): import java.util.Calendar; import java.util.Date; Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(2004, Calendar.JULY, 10); Date dob = calendar.getTime(); There are a few gotchas to be aware of here, first is that you can't specify the month value as just "7" or "07" as that would give the month as August (as month 0 = January!) and the other is that without the call to clear() the time part will be set to the time when the Calendar.getInstance() was called. Now compare this to creating a 'date of birth' Date object using Joda-Time : import org.joda.time.DateMidnight; Date dob = new DateMidnight(2004, 07, 10).toDate(); The DateMid...

The next Manchester Spring User Group meetup is 11th August

Following on from an excellent gathering in June , Guy Remond (MD of Cake Solutions ) has announced the details of August's meeting: "Introducing Spring Batch 2.0 plus Spring Framework 3.0 update" by Dave Syer : Well known as lead committer to the Spring Batch project as well as having a major influence throughout SpringSource, Dave will be sharing insight into the use of Spring Batch, showing some demonstrations and unveiling enhancements (scalability, XML config, Java 5…) within Spring Batch 2.0. In addition he has promised some interesting thoughts on the long awaited Spring Framework 3.0. There was a brief mention of Spring Batch at the last SUG meeting so I'm looking forward to finding out more... Oh, don't forget to register for the August meeting over on the Spring User Group website . Technorati Tags: Manchester , Spring , User Group , Spring Batch , Dave Syer , Andrew Beacock

Summary of June's Manchester Spring User Group Meeting

I missed the first Manchester Spring User Group meeting back in April which I heard was excellent so I made sure I didn't miss June's meeting . The sessions (based at the University of Manchester Core Technology Facility - cool building BTW) were organised by Cake Solutions (in particular their MD Guy Remond) and it was Guy that introduced the evening and laid out the agenda. Just a quick note about the venue, it's a very new tidy building, the room was an excellent size (seating for 50+ people) and coffee (and cake!) were provided. Parking was free and immediately outside the building, just press the buzzer and mention the Spring User Group... The first talk was by Paul Sweby (of CapGemini ) entitled: Spring in Government - Improving System & Personal Performance Paul works on the HM Revenue & Customs website and started his talk by providing some pretty impressive statistics: around 40 million tax payers use the HMRC web site for various purposes. The sof...

Easy, collaborative web UI mockups with Balsamiq

Every now and again you come across a tool that is so easy to understand, so fast to use and so effective at conveying it's ideas that you just have to tell people about it. One such tool is Mockups by Balsamic . It's a web page mockup drawing tool written using Adobe Air which provides a palette of HTML widgets with which to 'draw' your screens. It has a querky 'freehand' style which lends itself to conveying the components and ideas that a web page should have without forcing the designer to code it up in HTML (or for the customer to think that because the HTML is done, the app must nearly be ready...). Here is a very simple web page for search and listing users which I ' mocked up ' in less than 10 minutes: As you can see it's got a number of standard HTML widgets on it as well as a very useful 'post it' note allowing you to add distinctive notes and comments to the mockups themselves. So this in itself is enough to warrant using it to...

RXVT - a better console for Cygwin (Unix on Windows)

If you use Windows for software development you will have probably come across Cygwin at some point, the Unix shell for Windows (well a bit of a fake console but it will have to do!). The console out of the box is a bash shell running within a normal Windows cmd prompt box, which is ok but doesn't really give you all the features of a proper Unix shell, click and drag to select text, middle click to paste, decent scroll buffers, etc. However there is a solution to these issues - scrap the silly Windows DOS box and run RXVT instead! First off you will have to run the Cygwin installer again (don't worry it's quite clever and won't corrupt your current version of Cygwin) and select the rxvt terminal package to install. Then continue the installation as normal so that you are left with the Bash shell shortcut icon. You will now need to replace the normal DOS box bash terminal with the new RXVT one. Right-click on the shell shortcut and change the "target" an...

ClassNotFoundException when running JUnit unit tests within Eclipse (using Maven)

I've been using Eclipse & Maven for a while now and have the m2eclipse plugin installed so that Eclipse understands the Maven dependencies. I've never had any problems running unit tests within Eclipse until recently after I update the plugin. To see if you have this problem open any unit test within Eclipse and then run it as a JUnit test (or just CTRL-F11). It is fails with a 'ClassNotFoundException ' then you have this problem. After obtaining the classpath that Eclipse was using to spawn off the unit test it was clear that Maven (or more correctly the Maven m2eclipse plugin) was the root of the issue. It intercepts the fork operation so that it can correctly build the classpath with all the appropriate dependencies, the only thing that was missing on the classpath was any reference to the project's Java class files! The Maven project in question has the Java source and unit test classes in sub-modules and the Maven plugin wasn't adding these sub-...

Using ampersands (&) without variable substitution in Oracle either direct or with SQL*Plus

Oracle uses the ampersand (&) symbol within a string to indicate a substitution variable. But what if you want to use an ampersand as part of a regular string such as 'Bob & Sons'? There are two solutions that I know of and which one you use depends on the context in which you are running your SQL: Dealing with the ampersand on an SQL level To turn off interpreting the ampersand as a substitution variable it must be at the end of a string: insert into companies values ('Bob &' || ' Sons'); Dealing with the ampersand when using SQL*Plus To disable Oracle's variable substitution and therefore return & to the pool of standard characters you need to tell SQL*Plus to disable it: set define off Add that to the top of your Oracle SQL script or type it manually at the SQL*Plus prompt. These tips plus many more can be found within the rather useful The Oracle (tm) Users' Co-Operative FAQ . Technorati Tags: Oracle , Database , Ampersand , Variable ...

Hibernate HQL problems with database views and deleted rows within the same transaction

I found an interesting Hibernate view-related issue yesterday when deleting some data from a table within a single transaction. Let me set the scene a little - we have a People table which has one row per person. We have a FamilyTree database view which displays family trees using the People table as one of it's sources (it's quite a complex view with functions and the like but you get the picture). I was writing some unit tests around the area of deleting people. I used the view to get a list of people, deleted a person from the People table and then used the view to ensure that the person was gone. All of this was done with Hibernate-annotated domain objects and some JPA-based DaoSupport style classes - the standard Spring/Hibernate way. What I found was that when we were within a single transaction (i.e. within a unit test or within a web controller using the OpenSessionInView) and we delete from the table, the 'deleted row' is still visible and therefore incorrec...