If you don't have any weird issues like divorces, children from other marriages etc. to worry about then the process is quite straightforward and you may not require a lawyer if you just follow what the USCIS website asks you to do.
I had an excellent math education growing up (not in US) so programming did not seem intimidating to any of us as it looked a lot like math. For me the main motivation to code was to have my computer do the math and physics I was learning in school. US parents and teachers really need to push for better math skills rather than run away from it.
I am the creator of this app. I made this as a fun side project during grad school, but kept working on it as my friends or I needed more features. Over time it has become fairly popular and now I am thinking of making a traditional desktop software as well.
The main reason I built this was that existing tools (including G3Data) were either tedious, did not have any sub-pixel level accuracy or were limited to simple XY plots only. I took a very simple web based approach as it was easier for me and I could get this to work on virtually any computer in the lab that had a browser and internet.