# Use Javascript and Ruby for Freedom and Liberty

**URL:** <https://rubytalk.org/t/use-javascript-and-ruby-for-freedom-and-liberty/75584>\
**Category:** ruby-talk\
**Created:** [1 October 2021 10:02 UTC](https://rubytalk.org/t/use-javascript-and-ruby-for-freedom-and-liberty/75584 "2021-10-01T10:02:56Z")\
**Posts on this page:** 1\
**Showing post:** 40

<div class="post-metadata">

**Author:** ![Gregory\_Cohen](https://yyz1.discourse-cdn.com/flex029/user_avatar/rubytalk.org/gregory_cohen/32/2986_2.png) [@Gregory\_Cohen](https://rubytalk.org/u/Gregory_Cohen)\
**Post date:** [23 October 2021 02:38 UTC](https://rubytalk.org/t/use-javascript-and-ruby-for-freedom-and-liberty/75584/40 "2021-10-23T02:38:08Z")

</div>

Mate with KDE and GNOME installed too. 2012 Intel Macbook Pro

> **···**
>
> On Fri, Oct 22, 2021 at 8:32 PM Andy Maleh \<andy.am@gmail.com\> wrote:
> 
> > I just setup a Linux Mint VirtualBox image, installed rvm, open-jdk16,  
> > jruby-9.3.1.0, and glimmer-dsl-swt, and I was able to run `glimmer  
> > samples`, which brings up the Glimmer Meta-Sample (Sample of Samples).
> > 
> > What version and style of Linux Mint are you running? I am running  
> > Linux Mint Cinnamon 20.2 on a x64 MacBook Pro machine. I noticed there  
> > are two other styles: Mate and Xfce (Are you running one of them or  
> > Cinnamon?)
> > 
> > You have an x64 (x86-64) machine right? Not an ARM (AARCH64), is that  
> > correct?
> > 
> > The error you shared comes not from Glimmer DSL for SWT's code by the  
> > way, yet from swt.jar, meaning SWT itself was unable to bind on your  
> > system. Perhaps, GTK3 was missing when you tested? It is required.
> > 
> > Andy
> > 
> > p.s. I will try to share screenshots in a follow-up message
> > 
> > On Thu, Oct 21, 2021 at 10:57 PM Gregory Cohen \<gregorycohen2@gmail.com\> \> wrote:  
> > \>  
> > \> Sorry, I should have done the "\>" kind of response  
> > \>  
> > \> On Thu, Oct 21, 2021 at 9:56 AM Gregory Cohen \<gregorycohen2@gmail.com\> \> wrote:  
> > \>\>  
> > \>\> Well, on my Mint machine, I couldn't install gtk3 either, though apt  
> > install ruby-gtk3 works fine  
> > \>\>  
> > \>\>  
> > \>\>  
> > \>\>  
> > \>\>  
> > \>\>  
> > \>\> a@a:~$ jruby glimmer  
> > \>\> WARNING: An illegal reflective access operation has occurred  
> > \>\> WARNING: Illegal reflective access by  
> > jnr.posix.JavaLibCHelper$ReflectiveAccess to method  
> > sun.nio.ch.SelChImpl.getFD()  
> > \>\> WARNING: Please consider reporting this to the maintainers of  
> > jnr.posix.JavaLibCHelper$ReflectiveAccess  
> > \>\> WARNING: Use --illegal-access=warn to enable warnings of further  
> > illegal reflective access operations  
> > \>\> WARNING: All illegal access operations will be denied in a future  
> > release  
> > \>\> LoadError: no such file to load -- glimmer-dsl-swt  
> > \>\> require at org/jruby/RubyKernel.java:956  
> > \>\> require at  
> > /usr/share/jruby/lib/ruby/stdlib/rubygems/core\_ext/kernel\_require.rb:55  
> > \>\> \<main\> at glimmer:2  
> > \>\> a@a:~$ ruby glimmer  
> > \>\> Traceback (most recent call last):  
> > \>\> 2: from glimmer:2:in `\<main\>'  
> > \>\> 1: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require'  
> > \>\> /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require': cannot load such file -- glimmer-dsl-swt (LoadError)  
> > \>\> 9: from glimmer:2:in `\<main\>'  
> > \>\> 8: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:156:in  
> > `require'  
> > \>\> 7: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:168:in  
> > `rescue in require'  
> > \>\> 6: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:168:in  
> > `require'  
> > \>\> 5: from  
> > /var/lib/gems/2.7.0/gems/glimmer-dsl-swt-4.21.0.1/lib/glimmer-dsl-swt.rb:46:in  
> > `\<top (required)\>'  
> > \>\> 4: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require'  
> > \>\> 3: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require'  
> > \>\> 2: from  
> > /var/lib/gems/2.7.0/gems/glimmer-dsl-swt-4.21.0.1/lib/glimmer/dsl/swt/dsl.rb:23:in  
> > `\<top (required)\>'  
> > \>\> 1: from /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require'  
> > \>\> /usr/lib/ruby/2.7.0/rubygems/core\_ext/kernel\_require.rb:92:in  
> > `require': cannot load such file --  
> > /var/lib/gems/2.7.0/gems/glimmer-dsl-swt-4.21.0.1/vendor/swt/linux/swt.jar  
> > (LoadError)  
> > \>\> a@a:~$ ^C  
> > \>\> a@a:~$  
> > \>\>  
> > \>\>  
> > \>\> On Wed, Oct 20, 2021 at 11:05 PM Andy Maleh \<andy.am@gmail.com\> wrote:  
> > \>\>\>  
> > \>\>\> ". I couldn't even install the SWT gem!"  
> > \>\>\>  
> > \>\>\> I'm a bit surprised you had this issue. One thing to note is you have  
> > \>\>\> to be on JRuby not (C) Ruby when installing the gem.  
> > \>\>\>  
> > \>\>\> Could you please report to me what error messages you might have  
> > \>\>\> encountered that got in the way of installing the SWT gem  
> > \>\>\> (glimmer-dsl-swt: [GitHub - AndyObtiva/glimmer-dsl-swt: Glimmer DSL for SWT (JRuby Desktop Development Cross-Platform Native GUI Framework) - The Quickest Way From Zero To GUI - If You Liked Shoes, You'll Love Glimmer!](https://github.com/AndyObtiva/glimmer-dsl-swt))?  
> > \>\>\>  
> > \>\>\> I have a quad-core MacBook Pro too, and I know what you mean about  
> > \>\>\> JRuby taking 2.5 seconds minimum to do anything. It is an unfortunate  
> > \>\>\> trade-off to keep in mind when working with it, but the robustness and  
> > \>\>\> solidity of SWT as well as having the option to take advantage of  
> > \>\>\> countless Java libraries more than make up for it when building  
> > \>\>\> enterprise apps that you only start once at the beginning of the day  
> > \>\>\> and leave on all day. For apps that need to be started quickly or are  
> > \>\>\> not for the enterprise, other options might be better like Glimmer DSL  
> > \>\>\> for LibUI ([GitHub - AndyObtiva/glimmer-dsl-libui: Glimmer DSL for LibUI - Prerequisite-Free Ruby Desktop Development Cross-Platform Native GUI Library - The Quickest Way From Zero To GUI - If You Liked Shoes, You'll Love Glimmer! - No need to pre-install any prerequisites. Just install the gem and have platform-independent GUI that just works on Mac, Windows, and Linux.](https://github.com/AndyObtiva/glimmer-dsl-libui)) or Glimmer  
> > \>\>\> DSL for Tk ([GitHub - AndyObtiva/glimmer-dsl-tk: Glimmer DSL for Tk (Ruby Tk Desktop Development GUI Library)](https://github.com/AndyObtiva/glimmer-dsl-tk)) since they  
> > \>\>\> run on CRuby.  
> > \>\>\>  
> > \>\>\> Cheers,  
> > \>\>\>  
> > \>\>\> On Wed, Oct 20, 2021 at 8:51 PM Gregory Cohen \<gregorycohen2@gmail.com\> \> wrote:  
> > \>\>\> \>  
> > \>\>\> \> In the goal of completeness, look at these two pages on my site  
> > \>\>\> \>  
> > \>\>\> \> [https://ethicify.online/i](https://ethicify.online/i)  
> > \>\>\> \>  
> > \>\>\> \> [https://ethicify.online/index2.html](https://ethicify.online/index2.html)  
> > \>\>\> \>  
> > \>\>\> \> I realise that the second page might make some people mad, but so be  
> > it!  
> > \>\>\> \>  
> > \>\>\> \>  
> > \>\>\> \>  
> > \>\>\> \>  
> > \>\>\> \> On Wed, Oct 20, 2021 at 8:33 PM Gregory Cohen \< \> gregorycohen2@gmail.com\> wrote:  
> > \>\>\> \>\>  
> > \>\>\> \>\> Hi Andy  
> > \>\>\> \>\>  
> > \>\>\> \>\> OK  
> > \>\>\> \>\>  
> > \>\>\> \>\> So I made a desktop GUI application that is going to help with  
> > documentation!  
> > \>\>\> \>\>  
> > \>\>\> \>\> Kind of hard core, right?  
> > \>\>\> \>\>  
> > \>\>\> \>\> But that might be necessary.  
> > \>\>\> \>\>  
> > \>\>\> \>\> It works on Windows and Linux for sure, and Mac too  
> > \>\>\> \>\>  
> > \>\>\> \>\> It's in the current gem  
> > \>\>\> \>\>  
> > \>\>\> \>\> So people could be immeresed in MY platform  
> > \>\>\> \>\>  
> > \>\>\> \>\> As for religion, we could talk about that kind of stuff in person.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I would like to meet you.  
> > \>\>\> \>\>  
> > \>\>\> \>\> Thank you for the validation about C+= 2  
> > \>\>\> \>\>  
> > \>\>\> \>\> In the aim of completeness, I also must acknowledge the existence  
> > of the Ring programming language  
> > \>\>\> \>\>  
> > \>\>\> \>\> Ring, Crystal and C += 2 all have really good syntax.  
> > \>\>\> \>\>  
> > \>\>\> \>\> \> I know JavaScript well, but don't like working in it. I think  
> > using it is a  
> > \>\>\> \>\> big waste of time for everyone who uses it and is a big drain on the  
> > \>\>\> \>\> planet's collective software engineering energy. That's why I also  
> > \>\>\> \>\> love Opal.  
> > \>\>\> \>\>  
> > \>\>\> \>\> This is freaking hilarious.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I know like 13 or so programming languages, but I never learned  
> > Java.  
> > \>\>\> \>\>  
> > \>\>\> \>\> Javascript is like an extension of Java's badness.  
> > \>\>\> \>\>  
> > \>\>\> \>\> You really need to add GTK bindings to your great project. I  
> > couldn't even install the SWT gem!  
> > \>\>\> \>\>  
> > \>\>\> \>\> Not to mention, the startup time of jruby is really a lot. It takes  
> > like 2.2 seconds to run a do-nothing ruby command on my quad-core Mac.  
> > \>\>\> \>\>  
> > \>\>\> \>\> \> About your mission of offering freedom, you must respect the fact  
> > that  
> > \>\>\> \>\> not everybody is a software engineer, a developer, a programmer, or  
> > \>\>\> \>\> even remotely interested in computers at all. Some people feel a lot  
> > \>\>\> \>\> more free by never touching a computer, or think computer freedom is  
> > \>\>\> \>\> superficial or a catch-22 that ensnares more of their time to give  
> > \>\>\> \>\> them the illusion of freedom.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I'm afraid that people can't do this anymore. To be a competent  
> > member of a democracy, people need to be technologically literate. People  
> > need to take smart actions and not be vulnerable to things. Not everyone  
> > needs to be a programmer, but people cannot be vulnerable.  
> > \>\>\> \>\>  
> > \>\>\> \>\> Religion is the most important part of my life, but that is complex.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> \> I think you should focus your target audience on software  
> > engineers  
> > \>\>\> \>\> only, and respect the fact that people do need to make money to get  
> > \>\>\> \>\> food and pay living expenses, so it is important to have some form  
> > of  
> > \>\>\> \>\> enterprisey mentality.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> This is not my target audience.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I can't have good conversations with programmers.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I did have an enterprisey mentality, got an investor, rejected him.  
> > He was willing to invest tens of thousands of dollars with me, but he said  
> > that if he was wasting my time, then I should tell him that.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> I know how to earn millions of dollars with my skills fairly  
> > easily, but I'm not pursuing that course of action because that would make  
> > me feel more lonely.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> If you have a job for me that would make me feel "more together", I  
> > could work for you or someone else.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I don't have a formal Comp. Sci. background and I am not familiar  
> > with Rails  
> > \>\>\> \>\>  
> > \>\>\> \>\> I know  
> > \>\>\> \>\>  
> > \>\>\> \>\> \* C  
> > \>\>\> \>\> \* C++  
> > \>\>\> \>\> \* Bash  
> > \>\>\> \>\> \* D  
> > \>\>\> \>\> \* Python  
> > \>\>\> \>\> \* Ruby  
> > \>\>\> \>\> \* Some Perl  
> > \>\>\> \>\> \* Some Php  
> > \>\>\> \>\> \* Crystal  
> > \>\>\> \>\> \* Assembly Language  
> > \>\>\> \>\> \* HTML  
> > \>\>\> \>\> \* CSS  
> > \>\>\> \>\> \* Javascript  
> > \>\>\> \>\> \* Some awk  
> > \>\>\> \>\> \* My own langauge C += 2  
> > \>\>\> \>\>  
> > \>\>\> \>\> I know some libraries in those languages.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I got into programming when I was 13. I am 26 now. So I have been  
> > doing programming loosely speaking for 13 years.  
> > \>\>\> \>\>  
> > \>\>\> \>\> If someone wants to hire me for a project that would be easy and  
> > that would help me to build a better resume, then OK.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I am "equipped" with useful UNIX tools that I have made, so that  
> > might help my productivity.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I really don't need to worry about money.  
> > \>\>\> \>\>  
> > \>\>\> \>\> All I need to care about it relationships.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> I don't care if I get paid a bad wage.  
> > \>\>\> \>\>  
> > \>\>\> \>\> I made some websites for people in the past, but not that many, but  
> > I did make money from those.  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> On Wed, Oct 20, 2021 at 6:32 PM Andy Maleh \<andy.am@gmail.com\> \> wrote:  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Gregory Cohen, thank you for the kind words about my projects in an  
> > \>\>\> \>\>\> earlier message. I missed them before. I just read them now.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> By the way, I took a look at democracy. It's got a lot of tools. I  
> > was  
> > \>\>\> \>\>\> able to run the pure Ruby scripts, but not the C++ (or Crystal)  
> > stuff  
> > \>\>\> \>\>\> on my Mac.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I just got a chance to toy with [https://ethicify.online/](https://ethicify.online/) and  
> > noticed  
> > \>\>\> \>\>\> it recognizes any word I say on the microphone, and then types it  
> > in  
> > \>\>\> \>\>\> the browser window. It was accurate and reliable enough.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> One thing that caught my attention was reading statements like  
> > these:  
> > \>\>\> \>\>\> "I have created 57 freedom oriented programs"  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> and  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> "I made 61 YouTube videos of my software"  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> The issue with these statements is you only mention what you have  
> > done  
> > \>\>\> \>\>\> without enumerating all your projects (or providing links, like for  
> > \>\>\> \>\>\> youtube) in the README and documenting them in full details.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Unfortunately, undocumented software is like having no software at  
> > \>\>\> \>\>\> all. If it's not documented, people won't use it. Very few people  
> > have  
> > \>\>\> \>\>\> the patience to dig into a gem's content to learn what it does  
> > instead  
> > \>\>\> \>\>\> of simply reading documentation of it on GitHub or a project page.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Just my 2 cents.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> And perhaps, you have some documentation, but it's too  
> > disorganized.  
> > \>\>\> \>\>\> That is also like not having documentation at all. Paragraphs and  
> > \>\>\> \>\>\> markdown tags (## subheader, ### subsubheader, etc...) greatly  
> > \>\>\> \>\>\> facilitate management of information and enable dividing/conquering  
> > \>\>\> \>\>\> complexity.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Also, since you have multiple projects, you might want to divide up  
> > \>\>\> \>\>\> into multiple gems (instead of mixing everything unrelated in one  
> > \>\>\> \>\>\> gem), and then have the democracy gem reference all other gems as  
> > \>\>\> \>\>\> dependencies if it made sense. But, to be honest, democracy might  
> > be  
> > \>\>\> \>\>\> better as a WIKI page, not a gem. After all, those projects are not  
> > \>\>\> \>\>\> all in Ruby, so it would make better sense to divy them up into  
> > \>\>\> \>\>\> multiple GitHub projects and document all on some WIKI page on  
> > GitHub  
> > \>\>\> \>\>\> or elsewhere.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Also, it's a good idea to follow Kanban's recommendation of doing  
> > one  
> > \>\>\> \>\>\> thing at a time  
> > \>\>\> \>\>\> (  
> > [The power of doing only one thing at a time - Emergn](https://www.emergn.com/insights/the-power-of-doing-only-one-thing-at-a-time/)  
> > )  
> > \>\>\> \>\>\> to achieve significant value in one project before moving on to  
> > \>\>\> \>\>\> another.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I could help with Ruby stuff, but not C++, Crystal, or Python (I'm  
> > \>\>\> \>\>\> assuming you invented the C+=2 language... that's cool). I know  
> > \>\>\> \>\>\> JavaScript well, but don't like working in it. I think using it is  
> > a  
> > \>\>\> \>\>\> big waste of time for everyone who uses it and is a big drain on  
> > the  
> > \>\>\> \>\>\> planet's collective software engineering energy. That's why I also  
> > \>\>\> \>\>\> love Opal.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> About your mission of offering freedom, you must respect the fact  
> > that  
> > \>\>\> \>\>\> not everybody is a software engineer, a developer, a programmer, or  
> > \>\>\> \>\>\> even remotely interested in computers at all. Some people feel a  
> > lot  
> > \>\>\> \>\>\> more free by never touching a computer, or think computer freedom  
> > is  
> > \>\>\> \>\>\> superficial or a catch-22 that ensnares more of their time to give  
> > \>\>\> \>\>\> them the illusion of freedom.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I think you should focus your target audience on software engineers  
> > \>\>\> \>\>\> only, and respect the fact that people do need to make money to get  
> > \>\>\> \>\>\> food and pay living expenses, so it is important to have some form  
> > of  
> > \>\>\> \>\>\> enterprisey mentality.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> For example, although I offer Glimmer for free as open-source  
> > \>\>\> \>\>\> software, part of the reason is also that corporations could  
> > \>\>\> \>\>\> capitalize on it by being able to build desktop GUI applications  
> > in a  
> > \>\>\> \>\>\> fraction of the time it takes without Glimmer (like one month  
> > instead  
> > \>\>\> \>\>\> of 6, one week instead of 4, one day instead of 7, or one hour  
> > instead  
> > \>\>\> \>\>\> of a day). In other words, it is a profit multiplier that enables  
> > \>\>\> \>\>\> meeting business sales goals in a fraction of the cost. Maintenance  
> > \>\>\> \>\>\> going forward is even cheaper and quicker too.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> JRuby is a great example/role-model for.being an open-source tool  
> > that  
> > \>\>\> \>\>\> helps freedom, but also serves people's monetary interests at the  
> > same  
> > \>\>\> \>\>\> time by enabling them to leverage Java Virtual Machine robust  
> > \>\>\> \>\>\> libraries from Ruby to enable higher and quicker productivity of  
> > \>\>\> \>\>\> applications.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Anyways, just my 2 cents and some food for thought.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Cheers,  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Andy  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> p.s. By the way, if you feel lonely, and you're a Christian, you  
> > \>\>\> \>\>\> should make sure to attend church regularly. If you're a Jew, then  
> > go  
> > \>\>\> \>\>\> to the synagogue. Don't be shy or intimidated. Religious  
> > affiliations  
> > \>\>\> \>\>\> totally annihilate loneliness, making it impossible even when you  
> > are  
> > \>\>\> \>\>\> alone. I don't talk about religion usually. That was just a rare  
> > piece  
> > \>\>\> \>\>\> of advice that I felt was necessary given your difficult background  
> > \>\>\> \>\>\> and situation.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> On Wed, Oct 20, 2021 at 2:07 PM Gregory Cohen \< \> gregorycohen2@gmail.com\> wrote:  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> I meant to say  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> JRuby is taking a long time to install  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> LibUI does seem nice though  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> On Wed, Oct 20, 2021 at 2:04 PM Gregory Cohen \< \> gregorycohen2@gmail.com\> wrote:  
> > \>\>\> \>\>\> \>\>  
> > \>\>\> \>\>\> \>\> LibUI does seem nice though  
> > \>\>\> \>\>\> \>\>  
> > \>\>\> \>\>\> \>\> On Wed, Oct 20, 2021 at 1:18 PM hmdne \<hmdne@airmail.cc\> wrote:  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> On 10/20/21 18:16, Andy Maleh wrote:  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> \> BTW, QT is probably the worst of all GUI toolkits not only  
> > because it  
> > \>\>\> \>\>\> \>\>\> \> is not native and its APIs are idiosyncratic with their  
> > reliance on  
> > \>\>\> \>\>\> \>\>\> \> signals from what I heard, but also because it stopped  
> > getting  
> > \>\>\> \>\>\> \>\>\> \> maintained for Ruby around 2018 (as you can see in the Ruby  
> > gem page:  
> > \>\>\> \>\>\> \>\>\> \> [qtbindings | RubyGems.org | your community gem host](https://rubygems.org/gems/qtbindings))  
> > \>\>\> \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>\>\> \> Cheers,  
> > \>\>\> \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>\>\> \> Andy  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> Qt is native for some platforms like KDE or Sailfish OS. For  
> > other  
> > \>\>\> \>\>\> \>\>\> platforms, the applications adapt by applying native themes  
> > (ie. they  
> > \>\>\> \>\>\> \>\>\> don't dispatch rendering, but just theme things, for better or  
> > worse -  
> > \>\>\> \>\>\> \>\>\> I'm using GNOME on Wayland and there are problems with  
> > resizing apps but  
> > \>\>\> \>\>\> \>\>\> apparently on X11 this doesn't happen, some icons are missing  
> > - this  
> > \>\>\> \>\>\> \>\>\> mostly applies to KDE apps, but otherwise they mostly look  
> > native).  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> The Ruby binding support leaves a lot to desire, but also Qt 5  
> > moved  
> > \>\>\> \>\>\> \>\>\> mostly to QML, which is semantically close to HTML, but  
> > syntactically it  
> > \>\>\> \>\>\> \>\>\> looks like CSS and embeds JavaScript (to be honest, it very  
> > much  
> > \>\>\> \>\>\> \>\>\> resembles the Glimmer DSL for designing interfaces). It still  
> > has the  
> > \>\>\> \>\>\> \>\>\> legacy API, but new applications use QML. In theory, QML +  
> > JavaScript is  
> > \>\>\> \>\>\> \>\>\> all you need, but in practice it's like a frontend to a C++  
> > backend.  
> > \>\>\> \>\>\> \>\>\> There is a more recent project, that replaces the backend part  
> > with  
> > \>\>\> \>\>\> \>\>\> Ruby: [GitHub - seanchas116/ruby-qml: A QML / Qt Quick bindings for Ruby](https://github.com/seanchas116/ruby-qml) - but  
> > unfortunately it  
> > \>\>\> \>\>\> \>\>\> isn't developed anymore.  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \>\>\> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> --  
> > \>\>\> \>\>\> Andy Maleh  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> LinkedIn: [Andy Maleh - Lexop | LinkedIn](https://www.linkedin.com/in/andymaleh)  
> > \>\>\> \>\>\> Blog: [http://andymaleh.blogspot.com](http://andymaleh.blogspot.com)  
> > \>\>\> \>\>\> GitHub: [http://www.github.com/AndyObtiva](http://www.github.com/AndyObtiva)  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>\>  
> > \>\>\> \>\>  
> > \>\>\> \>\> On Wed, Oct 20, 2021 at 6:32 PM Andy Maleh \<andy.am@gmail.com\> \> wrote:  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Gregory Cohen, thank you for the kind words about my projects in an  
> > \>\>\> \>\>\> earlier message. I missed them before. I just read them now.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> By the way, I took a look at democracy. It's got a lot of tools. I  
> > was  
> > \>\>\> \>\>\> able to run the pure Ruby scripts, but not the C++ (or Crystal)  
> > stuff  
> > \>\>\> \>\>\> on my Mac.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I just got a chance to toy with [https://ethicify.online/](https://ethicify.online/) and  
> > noticed  
> > \>\>\> \>\>\> it recognizes any word I say on the microphone, and then types it  
> > in  
> > \>\>\> \>\>\> the browser window. It was accurate and reliable enough.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> One thing that caught my attention was reading statements like  
> > these:  
> > \>\>\> \>\>\> "I have created 57 freedom oriented programs"  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> and  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> "I made 61 YouTube videos of my software"  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> The issue with these statements is you only mention what you have  
> > done  
> > \>\>\> \>\>\> without enumerating all your projects (or providing links, like for  
> > \>\>\> \>\>\> youtube) in the README and documenting them in full details.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Unfortunately, undocumented software is like having no software at  
> > \>\>\> \>\>\> all. If it's not documented, people won't use it. Very few people  
> > have  
> > \>\>\> \>\>\> the patience to dig into a gem's content to learn what it does  
> > instead  
> > \>\>\> \>\>\> of simply reading documentation of it on GitHub or a project page.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Just my 2 cents.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> And perhaps, you have some documentation, but it's too  
> > disorganized.  
> > \>\>\> \>\>\> That is also like not having documentation at all. Paragraphs and  
> > \>\>\> \>\>\> markdown tags (## subheader, ### subsubheader, etc...) greatly  
> > \>\>\> \>\>\> facilitate management of information and enable dividing/conquering  
> > \>\>\> \>\>\> complexity.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Also, since you have multiple projects, you might want to divide up  
> > \>\>\> \>\>\> into multiple gems (instead of mixing everything unrelated in one  
> > \>\>\> \>\>\> gem), and then have the democracy gem reference all other gems as  
> > \>\>\> \>\>\> dependencies if it made sense. But, to be honest, democracy might  
> > be  
> > \>\>\> \>\>\> better as a WIKI page, not a gem. After all, those projects are not  
> > \>\>\> \>\>\> all in Ruby, so it would make better sense to divy them up into  
> > \>\>\> \>\>\> multiple GitHub projects and document all on some WIKI page on  
> > GitHub  
> > \>\>\> \>\>\> or elsewhere.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Also, it's a good idea to follow Kanban's recommendation of doing  
> > one  
> > \>\>\> \>\>\> thing at a time  
> > \>\>\> \>\>\> (  
> > [The power of doing only one thing at a time - Emergn](https://www.emergn.com/insights/the-power-of-doing-only-one-thing-at-a-time/)  
> > )  
> > \>\>\> \>\>\> to achieve significant value in one project before moving on to  
> > \>\>\> \>\>\> another.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I could help with Ruby stuff, but not C++, Crystal, or Python (I'm  
> > \>\>\> \>\>\> assuming you invented the C+=2 language... that's cool). I know  
> > \>\>\> \>\>\> JavaScript well, but don't like working in it. I think using it is  
> > a  
> > \>\>\> \>\>\> big waste of time for everyone who uses it and is a big drain on  
> > the  
> > \>\>\> \>\>\> planet's collective software engineering energy. That's why I also  
> > \>\>\> \>\>\> love Opal.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> About your mission of offering freedom, you must respect the fact  
> > that  
> > \>\>\> \>\>\> not everybody is a software engineer, a developer, a programmer, or  
> > \>\>\> \>\>\> even remotely interested in computers at all. Some people feel a  
> > lot  
> > \>\>\> \>\>\> more free by never touching a computer, or think computer freedom  
> > is  
> > \>\>\> \>\>\> superficial or a catch-22 that ensnares more of their time to give  
> > \>\>\> \>\>\> them the illusion of freedom.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> I think you should focus your target audience on software engineers  
> > \>\>\> \>\>\> only, and respect the fact that people do need to make money to get  
> > \>\>\> \>\>\> food and pay living expenses, so it is important to have some form  
> > of  
> > \>\>\> \>\>\> enterprisey mentality.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> For example, although I offer Glimmer for free as open-source  
> > \>\>\> \>\>\> software, part of the reason is also that corporations could  
> > \>\>\> \>\>\> capitalize on it by being able to build desktop GUI applications  
> > in a  
> > \>\>\> \>\>\> fraction of the time it takes without Glimmer (like one month  
> > instead  
> > \>\>\> \>\>\> of 6, one week instead of 4, one day instead of 7, or one hour  
> > instead  
> > \>\>\> \>\>\> of a day). In other words, it is a profit multiplier that enables  
> > \>\>\> \>\>\> meeting business sales goals in a fraction of the cost. Maintenance  
> > \>\>\> \>\>\> going forward is even cheaper and quicker too.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> JRuby is a great example/role-model for.being an open-source tool  
> > that  
> > \>\>\> \>\>\> helps freedom, but also serves people's monetary interests at the  
> > same  
> > \>\>\> \>\>\> time by enabling them to leverage Java Virtual Machine robust  
> > \>\>\> \>\>\> libraries from Ruby to enable higher and quicker productivity of  
> > \>\>\> \>\>\> applications.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Anyways, just my 2 cents and some food for thought.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Cheers,  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Andy  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> p.s. By the way, if you feel lonely, and you're a Christian, you  
> > \>\>\> \>\>\> should make sure to attend church regularly. If you're a Jew, then  
> > go  
> > \>\>\> \>\>\> to the synagogue. Don't be shy or intimidated. Religious  
> > affiliations  
> > \>\>\> \>\>\> totally annihilate loneliness, making it impossible even when you  
> > are  
> > \>\>\> \>\>\> alone. I don't talk about religion usually. That was just a rare  
> > piece  
> > \>\>\> \>\>\> of advice that I felt was necessary given your difficult background  
> > \>\>\> \>\>\> and situation.  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> On Wed, Oct 20, 2021 at 2:07 PM Gregory Cohen \< \> gregorycohen2@gmail.com\> wrote:  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> I meant to say  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> JRuby is taking a long time to install  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> LibUI does seem nice though  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> On Wed, Oct 20, 2021 at 2:04 PM Gregory Cohen \< \> gregorycohen2@gmail.com\> wrote:  
> > \>\>\> \>\>\> \>\>  
> > \>\>\> \>\>\> \>\> LibUI does seem nice though  
> > \>\>\> \>\>\> \>\>  
> > \>\>\> \>\>\> \>\> On Wed, Oct 20, 2021 at 1:18 PM hmdne \<hmdne@airmail.cc\> wrote:  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> On 10/20/21 18:16, Andy Maleh wrote:  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> \> BTW, QT is probably the worst of all GUI toolkits not only  
> > because it  
> > \>\>\> \>\>\> \>\>\> \> is not native and its APIs are idiosyncratic with their  
> > reliance on  
> > \>\>\> \>\>\> \>\>\> \> signals from what I heard, but also because it stopped  
> > getting  
> > \>\>\> \>\>\> \>\>\> \> maintained for Ruby around 2018 (as you can see in the Ruby  
> > gem page:  
> > \>\>\> \>\>\> \>\>\> \> [qtbindings | RubyGems.org | your community gem host](https://rubygems.org/gems/qtbindings))  
> > \>\>\> \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>\>\> \> Cheers,  
> > \>\>\> \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>\>\> \> Andy  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> Qt is native for some platforms like KDE or Sailfish OS. For  
> > other  
> > \>\>\> \>\>\> \>\>\> platforms, the applications adapt by applying native themes  
> > (ie. they  
> > \>\>\> \>\>\> \>\>\> don't dispatch rendering, but just theme things, for better or  
> > worse -  
> > \>\>\> \>\>\> \>\>\> I'm using GNOME on Wayland and there are problems with  
> > resizing apps but  
> > \>\>\> \>\>\> \>\>\> apparently on X11 this doesn't happen, some icons are missing  
> > - this  
> > \>\>\> \>\>\> \>\>\> mostly applies to KDE apps, but otherwise they mostly look  
> > native).  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> The Ruby binding support leaves a lot to desire, but also Qt 5  
> > moved  
> > \>\>\> \>\>\> \>\>\> mostly to QML, which is semantically close to HTML, but  
> > syntactically it  
> > \>\>\> \>\>\> \>\>\> looks like CSS and embeds JavaScript (to be honest, it very  
> > much  
> > \>\>\> \>\>\> \>\>\> resembles the Glimmer DSL for designing interfaces). It still  
> > has the  
> > \>\>\> \>\>\> \>\>\> legacy API, but new applications use QML. In theory, QML +  
> > JavaScript is  
> > \>\>\> \>\>\> \>\>\> all you need, but in practice it's like a frontend to a C++  
> > backend.  
> > \>\>\> \>\>\> \>\>\> There is a more recent project, that replaces the backend part  
> > with  
> > \>\>\> \>\>\> \>\>\> Ruby: [GitHub - seanchas116/ruby-qml: A QML / Qt Quick bindings for Ruby](https://github.com/seanchas116/ruby-qml) - but  
> > unfortunately it  
> > \>\>\> \>\>\> \>\>\> isn't developed anymore.  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\>  
> > \>\>\> \>\>\> \>\>\> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \>\>\> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \>  
> > \>\>\> \>\>\> \> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> --  
> > \>\>\> \>\>\> Andy Maleh  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> LinkedIn: [Andy Maleh - Lexop | LinkedIn](https://www.linkedin.com/in/andymaleh)  
> > \>\>\> \>\>\> Blog: [http://andymaleh.blogspot.com](http://andymaleh.blogspot.com)  
> > \>\>\> \>\>\> GitHub: [http://www.github.com/AndyObtiva](http://www.github.com/AndyObtiva)  
> > \>\>\> \>\>\>  
> > \>\>\> \>\>\> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \>\>\> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\> \>  
> > \>\>\> \>  
> > \>\>\> \> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>\>\>  
> > \>\>\>  
> > \>\>\>  
> > \>\>\> --  
> > \>\>\> Andy Maleh  
> > \>\>\>  
> > \>\>\> LinkedIn: [Andy Maleh - Lexop | LinkedIn](https://www.linkedin.com/in/andymaleh)  
> > \>\>\> Blog: [http://andymaleh.blogspot.com](http://andymaleh.blogspot.com)  
> > \>\>\> GitHub: [http://www.github.com/AndyObtiva](http://www.github.com/AndyObtiva)  
> > \>\>\>  
> > \>\>\> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \>\>\> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);  
> > \>  
> > \>  
> > \> Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org  
> > ?subject=unsubscribe\>  
> > \> \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);
> > 
> > --  
> > Andy Maleh
> > 
> > LinkedIn: [Andy Maleh - Lexop | LinkedIn](https://www.linkedin.com/in/andymaleh)  
> > Blog: [http://andymaleh.blogspot.com](http://andymaleh.blogspot.com)  
> > GitHub: [http://www.github.com/AndyObtiva](http://www.github.com/AndyObtiva)
> > 
> > Unsubscribe: \<mailto:ruby-talk-request@ruby-lang.org?subject=unsubscribe\>  
> > \<[http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt](http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-talk&gt);

---

_[View the full topic](https://rubytalk.org/t/use-javascript-and-ruby-for-freedom-and-liberty/75584)._
