• .NET - Programming - Web

    Web page scraping, the easy way

    Scraping content from websites can be a useful tool for gathering information or automating certain tasks. In C#, there are several libraries available that can help make this process easier. In this blog post, we will cover how to use the HtmlAgilityPack library to scrape content from websites in C#.…

  • .NET - Programming - Web

    Scraping dynamic page content

    Scraping dynamic content from websites has become an important task in data collection and analysis. With the advancements in web technologies, websites are now using dynamic content that cannot be easily scraped with traditional web scraping techniques. In this blog post, we will explore how to scrape dynamic content from…

  • .NET - Programming - Testing

    Unit-testing file I/O

    Two good news: file I/O is unit-testable, and it is surprisingly easy to do. Let’s see how it works! A software no-one asked for First, we need a piece of software that deals with files and that has to be unit-tested. The TestableIO project does the following: given a directory,…

  • Programming - Software

    Fixing Git pull errors in SourceTree

    If you encounter the following error when pulling a repository in SourceTree: VirtualAlloc pointer is null, Win32 error 487 it is due to to the Cygwin system failing to allocate a 5 MB large chunk of memory for its heap at the fixed address 0x68570000, while only a hole 2.5…

  • .NET - Programming - Testing

    Necessary evil: testing private methods

    Some might say that testing private methods should be avoided because it means not testing the contract, that is the interface implemented by the class, but the internal implementation of the class itself. Still, not all classes were designed with testability in mind, so real life compromises sometimes demand such…

  • .NET - Programming - Software

    Windows Forms smells funny, but…

    In the “2016 .NET Community Report” just released by Telerik, the answers to the question “What technology would you choose if building for Windows Desktop?” were as follows: So roughly half of new desktop developments would be based on Windows Forms, a technology declared dead multiple times. The Telerik report…

  • Multi-thread

    Parallel loops in the AltaLux kernel

    The AltaLux plugin for IrfanView is now open-source (here is the GitHub link) and it is worth analyzing the different methods used for parallelizing the computational kernel. The filter factory, contained in the CAltaLuxFilterFactory files, can create one of four possible instance types (actually there’s a fifth one that you…

  • Software

    AltaLux filter for IrfanView is now open-source!

    I have just released the new version of the AltaLux plug-in for IrfanView on GitHub, clone it now! There are some good reasons for taking a peek: having a look at how to write a plugin for IrfanView discovering how the AltaLux algorithm works comparing different ways to divide the…