2018-March I Love Lucee


#1

March 2018 I Love Lucee Topics

Seen something interesting in the Lucee or CFML community this month? Post it here!

lucee-forkx2

PS. As always I love Lucee is a quick review of Lucee and CFML happenings in general!


#2

Check out this video on Lucee’s static scope - a feature unique to Lucee:

This video explains how to use the static scope in a component, a tool once you are using it. you never want to miss again.


#3

Simple CFML Implementation of HaveIBeenPwnd Password API v2
Checks supplied password against 500 million known compromised passwords securely and in real time.

Awesome… a CFML lib…

that takes advantage of…

And is super-fast because of…

Love it!


Simple CFML Implementation of HaveIBeenPwnd Password API v2
#4

Enjoyed this little post on to splitting work loads into parralel tasks within Lucee in order to solve a problem faster. The thing I like best is how simple the approach is :wink:

One approach for increasing your application performance in Lucee is to take advantage of multi-threading - this allows you to improve throughput and take full advantage of multi-core processors. In this part 1 we will take a look at the concept of “parallelism” and how it can work in Lucee. In part 2 we will cover a couple of potential pitfalls, and how correct concurrent code can solve them.

While the terms Concurrent and Parallel are used many times interchangeably, they do not mean exactly the same thing. According to Brian Goetz [1], Java Language Architect at Oracle and author of the book “Java Concurrency in Practice”, concurrency describes the ability of a program to access shared resources in a correct and efficient manner, while parallelism describes its ability to utilize more resources in order to solve a problem faster. Writing correct concurrent code is difficult and error prone; making parallel code correct is comparatively simpler and safer.

h/t @isapir


#5

Agreed. Please more posts like this!


#6

Here is this week’s video on pre-compiled code:

This example shows you how you can deploy precompiled code on your server in case you don’t want to publish your source code or simply for performance reasons.
That way Lucee no longer needs to compile your code at runtime.
Note that ACF does let you compile code, but it does not have the concept of lar files nor mappings that point to them.


#7

There are all sorts of ways to support Lucee

I forgot I had a 3 minute, semi-cogent spiel on how much we appreciate Lucee contributions.

Already cue’d up to the 1h3m05s mark.

From the transcript…

Michael:
So, what would it take to make ColdFusion even more alive this year?

Geoff:
So, one obvious example is Lucee. So, there’s all sorts of ways that you can support Lucy whether that’s doing documentation, or just helping out on the forum all the way through to actually making some kind of financial contribution. Because of the type of organization that we are: Lucee Association Switzerland. This is worth having a quick thirty second thing about that.

The Railo thing was a commercial entity and they got into I think to be fair to them, the shareholders in that particular environment had a falling out which led to a kind of paralysis of the code base. And that’s why there was a need to kind of fork that code base and to make a new open source community.

From the very beginning, the focus for Lucee Association Switzerland was to be it is a specific structure called a Swiss Verein which is like an association, or a union, could be a chess club, could literally be a trade union, could be a little law firm. But all of these things sit in a “not for profit” kind of bubble. Which means that we have to spend everything that we get on specific things that are relevant to the membership which in this case is the development of Lucee. So we wanted to have a custodial entity that was absolutely not for profit, was totally focused on ensuring the community was healthy and promoting the ongoing development of the underlying language, and we have that.

And it’s at your end that’s one of situation where any financial contribution actually has a significant impact on our capacity to address issues, build new features, improve compatibility with other ColdFusion just improve our community overall. And those standing members of LAS is nothing particularly special about them except for the fact that they contribute financially, and also contribute in many instances with resources, and stuff in terms of making overall Lucee community a success. I should say there are several members now that actually just have a financial contribution. They said, “Look, we want the community to be healthy, we don’t have the time to contribute in the sense of like true open source from contribution.

But we’re happy to see that the money that we might otherwise have spent on an Adobe license can go towards improving the overall engine compatibility and health of that community. And we are at a time where any contribution at all has a significant impact, and people shouldn’t underestimate how much their contribution could mean to the community as a whole. So, I just put that out there. Obviously, the president hat on and everything else.

It is something that we believed in strongly when it was first floated, and we contribute not only our financial kind of stipend to the membership. But also significantly in terms of resources and our representation on the management board of managing the official Lucee images contributions to the community and so on so. I think it’s healthy. It might actually makes the development saying you know they like contributing to open source. We give them the time that they need not just to Lucee, but to other open source enterprises.

If you’re going to use those products, and giving back even in a small way is always good karma; I think.

h/t


#8

qb is a fluent query builder for ColdBox. It is heavily inspired by Eloquent from Laravel.

Using qb, you can:

  • Quickly scaffold simple queries
  • Make complex, out-of-order queries possible
  • Abstract away differences between database engines

#9

@Leftbower Here is the second part of the Multi-Threading post:


#10

Check out this week’s tutorial video on Deploy Archives:

This video shows you how you can deploy complete applications in a very easy way by using Lucee archives.
Note that this feature is available in all versions of Lucee; however, it is not available in ACF.


#11

mod_cfml

AUTOMATICALLY CONFIGURE TOMCAT HOSTS TO MATCH HOSTS CREATED IN APACHE OR IIS

Mod_cfml is a community-driven suite of programs that automatically configures Tomcat hosts to match hosts created in Apache, NGINX, or IIS. Mod_cfml removes the need to configure web sites twice - once in your web server and again in Tomcat - and performs this task automatically for you.
https://viviotech.github.io/mod_cfml/index.html


#12

This week’s tutorial is on SQL Queries:

This video shows you how you can do SQL queries in Lucee.
With help of a tag, a script tag, a function or with a component.
We also look at possible future improvements.

Example Code from the video can be found here:
https://github.com/lucee/Example-Code/tree/master/Query


#13

The annual General Assembly meeting of member companies was held this week. There was a lot of great discussion on the accomplishments and direction of Lucee.

On behalf of all LAS Members, we would like express our heartfelt thanks to the Management Board for their service over the last year:

Geoffrey Bowers, Daemon; President
Sander Bruinsma, Toomba; Marketing Manager
Gert Franz, Rasia; Treasurer and Member Ambassador
Michael Offner; Development Manager
Patrick Quinn, Webappr Services; Product Manager
Alex Skinner, Pixl8

The Board’s enthusiasm and guidance have had an incredible impact on the success of Lucee server community.

The 2018 Management Board will be as follows:
Geoffrey Bowers, Daemon; President
Sander Bruinsma, Toomba
Gert Franz, Rasia
Patrick Quinn, Webappr Services
Alex Skinner, Pixl8

Specific board member roles will be determined at the next board meeting.

We would also like to thank all of the Lucee supporters and member companies for their commitment and support of the Lucee Server Project.

Lucee Member Companies:
blueRiver
Breakdown Services, Ltd.
Daemon
Digital Community Holdings
InfoTrax Systems
MitrahSoft
Ortis Solutions
Pixl8
Rasia
tecRacer
Toomba
Webapper


#14

h/t @isapir


#15

h/t @Zac_Spitzer


#20

This week’s tutorial shows you how to install extensions in Lucee.


#21