sozluk-cgi
mojo
sozluk-cgi | mojo | |
---|---|---|
3 | 51 | |
210 | 2,657 | |
- | 0.5% | |
10.0 | 7.9 | |
about 8 years ago | 4 days ago | |
Pascal | Perl | |
MIT License | Artistic License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
sozluk-cgi
-
Ask HN: What's your "it's not stupid if it works" story?
Using CGI protocol on a Windows server. IIS (Windows' own web server) basically interfaces with executables by running them, feeding them HTTP headers, and server variables through environment variables, and gets the response HTTP headers and the body from their STDOUT. It's very inefficient, of course, since every request requires spawning a new copy of the executable, but it had worked fine in its first months :)
Here is a very simple example from the original sources: https://github.com/ssg/sozluk-cgi/blob/master/hede.pas
-
The beauty of CGI and simple design
I wrote Eksi Sozluk, the most popular Turkish social platform to date, back in 1999 using Delphi as CGI executables[1]. Delphi was the tool that I knew best, and CGI worked for me at the beginning. I almost immediately started having problems with EXE files constantly active, making updates impossible (as it was Windows based), which required restarting the server for any kind of update.
CGI executables also caused problems when I switched to an Alpha AXP RISC server which emulated x86, bringing the performance to a crawl. That made me switch to classic ASP, and about 10 years later, to ASP.NET MVC with routing, unit tests, abstractions, jQuery, all the shiny things at the time.
Web didn't stop there of course; there came SPA's, React, Vue and whatnot.
Now, seeing the yearning for CGI in 2023 feels funny. Have we come full circle? :)
___
[1] https://github.com/ssg/sozluk-cgi
mojo
- Mojolicious
-
CSS in Perl
Initial thoughts
-
Perl 5.38 Released
If you end up doing web development, check out Mojolicious:
https://mojolicious.org/
-
How can I host a perl based website on a vps?
If you choose to go down the Mojolicious road, there's lots of deployment information and guides in the Mojolicious Cookbook.
-
Mojo may be the biggest programming language advance in decades
I guess this will make it harder to search for Mojo(licious)-related stuff. 😩
-
Getting the result/reject values from a Mojo::Promise using async subs
But if I want the return value of 'test_p' or the error message 'This is an error', I can't seem to figure that out. I tried looking at the promise tests (https://github.com/mojolicious/mojo/blob/main/t/mojo/promise.t) but that didn't seem to work either.
-
Choose boring tools
Several! The 3 big players in order of release are Catalyst, (released in 2005), Dancer2 (Dancer was first released in 2009, but went through a complete re-write as Dancer2 around 2013), and Mojolicious (released in 2010).
-
Guidance on Building a Web Application in Perl
This project sounds to me like the perfect excuse to learn Mojolicious if you're interested in converting your scripts into a web application using Perl.
-
i3mojo -- an i3status replacement in Perl
Awesome! I still use Perl on a pretty regular basis both for work and fun. I really enjoy it. Definitely take a look at Mojolicious if you haven't already. It's primarily focused on being a web framework (both server and client), but it's nicely modular so you can use bits and pieces of the stack. In i3mojo, I used the Mojo::IOLoop event loop, Mojo::Base as a base class system, and Mojo::UserAgent as a web client for some plugins.
-
The beauty of CGI and simple design
Last time I used Perl for anything web it was via https://mojolicious.org/
It even does event-based and websockets
What are some alternatives?
quickserv - Dangerously user-friendly web server for quick prototyping and hackathons
Flask - The Python micro framework for building web applications.
php - Prolog Home Page
go - The Go programming language
Trusted-CGI - Lightweight runner for lambda functions/apps in CGI like mode
node - Node.js JavaScript runtime ✨🐢🚀✨
vehiclelogserver - Vehicle logging server for Second Life vehicles
Django - The Web framework for perfectionists with deadlines.
preemptible-thread - How to preempt threads in user space
LANraragi - Web application for archival and reading of manga/doujinshi. Lightweight and Docker-ready for NAS/servers.
zfs - OpenZFS on Linux and FreeBSD
Express - Fast, unopinionated, minimalist web framework for node.