After a while of developing Clew I realized it would probably be a good idea to start a development blog so that you can trace the collapse of my sanity in real time (why are emojis allowed in URLs anyway??? đ©).
what to expect
I have no idea. Weâll have to figure it out together. Iâll probably post progress updates here, so you can be sure that Iâm not just spending my days eating chips and playing video games instead of reinventing the wheel like Iâm supposed to. Perhaps the occasional announcement.
If nothing else, I plan to try and make it entertaining. So hey, follow along. Thereâs an Atom Feed to get updates as they come out, and if you donât know what that means, read this excellent post by Hund (#DiscoveredWithClew) to learn all about it.
current status
So as not to leave you empty handed, hereâs a quick update on whatâs going on right now.
I just finished coding a multithreaded, multi-queue task prioritization system for Ariadne, Clewâs crawler, and somehow (somehow) it worked first try. With that out of the way, Iâve set the crawler running on my server and the index is steadily growing.
Thereâs still a little work to do before releasing the crawlerâs code publicly on Clewâs Codeberg organization, but this was the biggest blocker to getting that done, so it shouldnât be long now, assuming no mental breakdowns on my side.
Once thatâs all wrapped up and the crawler is running at full speed, Iâll be starting work on a refactor of the query parsing and matching logic for searches.
You see, one of the current issues with Clew is that it can rank how strong matches are given keywords, but it doesnât actually have a way to gauge whether a result actually fully matches. For example, a search for âbenjamin hollonâ could have a page that just says âbenjaminâ over and over at the top, even if it never says âhollonâ, because the strength of the match for âbenjaminâ is so high.
Once this refactor is finished, results will first be sorted by the completeness of the match, then by the strength results match the keywords with.
It sure wonât be easy, but it should drastically improve the results you get when using Clew.
bye
Okay, I need to get back to bashing my head against the brick wall that is the Clew codebase. See you next time!