I would like to update the Documentation


Is this a good idea?

Also is this project active? (I suppose I'll be able to tell based on how quickly anyone replies.)

TLDR; I like tiling window managers, I'm learning C# in college (read: I know nothing useful.. yet), I want to help with this project to learn more, and I think updating the documentation will help me learn enough about the project that I can start making code contributions. So, I want to update the API and Usage text files.

I've always been one of those weirdos who likes to build the software that runs on their machine and plays with new tools all the time. I live in an Arch Linux environment /w XMonad or dwm, but I've been forced to use Windows for the past few months due to my work situation and I'm tired of not having a tiling window manager. Reading around online I discovered this is probably the best available, but it looks like the community is inactive and everything is a few years out of date. I'd like to try and change that! Not that I have actual community management skills or anything I just think, just a voracious appetite to help out, and maybe a few friends I can get interested as well, some of whom have actual C# experience.

I'm also taking a C# class at a local community college which is only going over the basics that I know from every other programming language and is essentially a "how to use visual studio" tutorial.
So I've been looking for something more challenging to help me learn in my time outside of class.
After I first built the IronLanguages projects (Python and Ruby), I built Windawsome and I was ready to be on my way, but then I ran the Visual Studio Code Analysis tools against it and it showed there are quite a few things that it said were issues and I was quickly overwhelmed trying to patch them up. My lack of knowledge of the implementation of Windawesome, the Windows API, and C# itself all contributed to that. But reading all of Microsofts online documentation the reports linked to. I've been learning all about the Windows API, C#, and the Common Language Specification. And some about design patterns that are helpful in environments with lots of P/Invokes. Particularly implementing a SafeHandle to pass resources back and forth between DLL exposed functions, effectively making the calls managed, which removes the need for both Finalizers and implementing the Dispose method.

Basically, I'm ridiculous, but maybe that's a good thing.


Alien282 wrote Sep 28, 2015 at 7:58 AM

Hi, the project is "alive" in the sense that it's still working on all Windows versions and there's not that many bugs left to fix. But I'm not using Windows any more and I've stopped the active development. Be my guest to fix anything that you find that is not OK. :) Fork the project and submit pull requests and I'll be glad to merge everything that is fine. :)

zenware01 wrote Sep 28, 2015 at 8:05 PM

Sweet, I'll get on it.

Also, that reply was extraordinarily quick, you're awesome.

I don't think there is anything that doesn't work, I just want to refactor as much as I can to meet Microsoft's guidelines because:
A.) I hate myself.
B.) I will learn things.