Posts

Insights for Software Development Workflows from the Pacific Islands

Image
Talofa! I came across an interesting video on how enterprise software development workflows might work. I found that I was using a hybrid of techniques mentioned which aligned well given that it was showing how BIG companies with teams of developers would develop software. We have a few software developers at SPREP but mostly work on our own projects . I thought I would reflect on my workflow as it is something that I've built up over time from research and collaboration with other developers. Tests, Continuous Integration/ Continuous Deployment (CI/CD) My workflow involves setting up tests from the get go and putting them into Gitlab CI pipelines . This gives me confidence that the system builds and I'm not breaking stuff I already fixed . Here is an example of how I would set up a Drupal project with style tests and a Github Action for running them. Feature building with Git branches I build features using git branches . If I have an urgent requirement or fix , I can switch

Save time upgrading Drupal 9 to 10 with these tips

Image
Upgrading ensures our sites and apps remain secure with security patches as needed. They will also continue to receive feature enhancements going forward. Today I deployed the Drupal 10 upgrade for the SPREP Virtual Library . It was completed over a 3 week period while juggling the day-to-day support requests, meetings and providing technical advise. In contrast, I later upgraded and deployed one of our smaller apps with no custom code in just 2 hours. Upgrading from Drupal 9 to Drupal 10 involves a series of critical steps and considerations to ensure a smooth transition. This post looks at how to upgrade then outlines key lessons learned and best practices from the upgrade process, focusing on Drupal configurations, Docker environments, and CI/CD pipeline adjustments. How do you upgrade?   1. Start with installing the Upgrade Status module which will check if you are ready for an upgrade.  2. Uninstall any deprecated core modules and themes 3. Reduce the clutter and remove any unin

Rescuing old laptops with the help of Linux

Image
I spent the weekend reviving 2 old laptops. Both  have more than 10 years on them. The Compaq one had recently been upgraded to Windows 11 from Windows 7. Big mistake! It resulted in a sluggish barely useable laptop. The second was an old Dell XPS 15 from my Uni days. It was running Windows 11 well but it would randomly blue screen so it was pretty useless. Enter LXLE OS . This is an Ubuntu based distro using the lightweight Lubuntu LTS distro but with some improved UI elements. I downloaded the image which was about 2GB and created a bootable USB driving using Rufus . Plugged it into the laptops and it did its thing. Both laptops are working very smoothly. Wifi, bluetooth, graphics and audio work fine. I was even able to set them up for coding using Docker and Vscode. The Dell XPS has not blue screened since switching.  LXLE comes preinstalled with a lightweight browser (I installed Firefox anyway), Libre Office, some simple games and other useful apps. The UI takes some getting used

Laravel 11 is out and you can auto upgrade with Laravel Shift

Who says PHP is dead? Always exciting to see how Laravel progresses the PHP landscape by providing a lightening fast product and an amazing ecosystem to support it. Laravel 11 is out and also unleashes Laravel Reverb for working with websockets. Ive only been building with Laravel since v10 and seeing they also have Laravel Shift for automated upgrades from v10 to v11 is amazing. Its a paid service but its peanuts compared to the time you'd spend upgrading it manually. Cheers Taylor Otwell and team!! https://blog.laravel.com/laravel-11-now-available

Strategic approach to implementing Drupal

 #Drupal is a key component of SPREPs software stack. By standardising on this platform we have taken the guess work out of maintaining and supporting new websites and applications. Furthermore our team can build and share knowledge on a common platform. It also provides the flexibility to support other platforms such as mobile app development through APIs. I continue to look at ways we can support it financially in addition to contractors we take on from time to time. #opensource https://www.previousnext.com.au/blog/how-can-free-open-source-cmses-remain-competitive-enterprise-clients?utm_source=drupal-newsletter&utm_medium=email&utm_campaign=drupal-newsletter-2024-03-21

Samoa Code Hub hosts seminar on AWS Fundamentals

Samoa Code Hub (SCH) formally Samoa Stackoverflow, held its first virtual workshop last night on ☁️AWS Cloud Fundamentals. Ali'imuamua Ron Amosa in his personal capacity shared his experience in AWS Cloud technology.  The workshop covered the key types of services provided and how to leverage it to deploy applications or run process intensive tasks. 🚰"Think of it as a tap. Turn it on and run your processes. Turn it off once you are done", Ron stated. "You only pay for what you've used", he continued. With cloud tech you have access to super computers and servers all around the globe. The S3 service lets you store up to 5TB of data for a single file 😲. The workshop concluded with a Q&A session. There was lively discussions on a range of topics such as: 🗺Which locations have the most performant servers? 💵What happens to your data if you dont pay bills? 🔒What happens when there is a court order to retrieve your data? The workshop was well attended by m

Mobile app development with Flutter

Jumping into📱 Mobile App development with Flutter🪽. Its a code once deploy many framework backed by Google that lets you deploy Android, iOS, Linux, Windows and Mac apps from the same code base. We are using it to develop a Weather and Emergency response app for the Tonga Met Services. 🫣 Ive found it doesnt play well with Docker which means you have to install the dev environment directly on your machine 👎 . The setup takes about 30 to 60 mins⏳️ depending on your internet connection.  For Android app development its also recommended to plug in a real phone for testing as the emulator takes ages to run. Im close to deploying to my phone. Watch this space! 🎥