About computer science, crafting software, and what happens in between
  • Staffing issues

    Staffing issues typically originate from a failure to understand project requirements, flawed resource estimation, and poor management. In my current role, I have found that hiring and retaining good developers can be challenging in today’s marketplace due to their massive demand. High salaries and extravagant titles aren’t enough; as a... [Read More]
  • Documentation issues

    Documentation often suffers because clients and developers alike fail to recognise its importance, instead prioritising development activities to demonstrate progress and value. Documentation supports the entire lifecycle of software development: from helping individual developers recall why they built something in a certain way, to enabling continuity between developers, to facilitating... [Read More]
  • Cost estimations

    Unrealistic resource estimation. Estimation is the primary basis to secure the resources required for project execution. Failure to understand the skills, labour hours, and time required to successfully address requirements frequently leads to budget overruns and project failures (McGrath, 2008; Lehtinen et al., 2014) [Read More]
  • On Testing

    Software testing: The lack of software testing and a proper strategy for conducting the aforementioned test, can push back a software project release immensely, or even worse, it can cause life-altering problems in the production. Additionally, when upgrading a legacy system to a new one, it is important to ensure... [Read More]
  • Stealing ads to violate someone's privacy

    A study demonstrates that simply knowing someone’s email (or a similar personal identifier) makes it possible to see what kind of products the victim buys online. The attack leverages the mechanisms used by advertisement companies that can track one person across multiple devices, and it is as simple as forging... [Read More]