The Incredible Growth of Python – StackOverflow

growth of python programming language

Python, the language used to program Tendenci – The Open Source AMS, continues it’s meteoric rise in the world of developers. And where the developers go is where the rest of us go. Thus Python’s rise matters. And it benefits every Tendenci user, self hosted or hosted with our small company (same software either way).

IEEE Spectrum rates the languages by its readers as follows:

Python has continued its upward trajectory from last year and jumped two places to the No. 1 slot, though the top four—Python, C, Java, and C++—all remain very close in popularity.

StackOverflow, a go-to site for pretty much every programmer and sysadmin out there, has a new blog post up on the incredible growth of the Python Programming Language. Python is of course the programming language used in Tendenci – The Open Source AMS. From the Stack Overflow post:

June 2017 was the first month that Python was the most visited tag on Stack Overflow within high-income nations. This included being the most visited tag within the US and the UK, and in the top 2 in almost all other high income nations (next to either Java or JavaScript). This is especially impressive because in 2012, it was less visited than any of the other 5 languages, and has grown by 2.5-fold in that time.

They have numerous charts to back up the data, but these two in particular paint a telling picture.

From Stack Overflow – the current tag questions viewed:

Growth of Python Programming Language
StackOverflow – The Incredible Growth of Python

Perhaps even more impressive is the projection on the continued growth of Python. Just WOW!

growth of python programming language
Python – Incredible growth with developers

The above graphs should give you confidence in your choice of using Tendenci as your AMS as the developers are not only there, but growing. Given Tendenci is fully open source (this is different from “free trial” AMS systems which are NOT actually FOSS (Free and Open Source Software). Wikipedia describes the difference as:

(FOSS means) anyone is freely licensed to use, copy, study, and change the software in any way, and the source code is openly shared so that people are encouraged to voluntarily improve the design of the software.[3] This is in contrast to proprietary software, where the software is under restrictive copyright and the source code is usually hidden from the users.

Many of our competitors who are NOT Open Source and not true FOSS which can sometimes confuse people. I’ll do a future post on examples of sometimes misleading representations by AMS systems that are not “actually” Free and Open Source (FOSS)  as defined on Wikipedia.

The good news is with the growth of Python, it only make sense that developers will look at and many will join in to help the community improve the software as they join associations themselves.

We’ve written about why we chose Python over PHP to develop Tendenci open source several times. Correctly choosing the open source stack gives us, and everyone in the community, confidence to see the trends predicted correctly. It wasn’t rocket science – we just listened to our team, we listened to younger developers, and most importantly we listened to our clients on what the future was/is going to be.

And associations are kind of a big deal and they can’t use minimum viable products.

Why are associations unwilling to accept apps that meet only minimal requirements? Um… because they started as Guilds and go back to Medieval times. From Britannica on Guilds and Trade Associations:

Guild, also spelled gild , an association of craftsmen or merchants formed for mutual aid and protection and for the furtherance of their professional interests. Guilds flourished in Europe between the 11th and 16th centuries and formed an important part of the economic and social fabric in that era.

and Britannica goes on….

… associations are known to have existed in ancient Rome, however, where they were called collegia. These craft guilds seem to have emerged in the later years of the Roman Republic. They were sanctioned by the central government and were subject to the authority of the magistrates.

This is a huge topic of course. Just know that Tendenci is the ONLY top ranked AMS system that is truly FOSS. Unlimited admins, users, contacts – you can self host or if hosted with us we only charge for processing power. Got 1M users and contacts and 50 admins? No problem. And the growth of Python assures your continued freedom from vendor lock-in no matter what.

#peace and happy (Python) programming y’all!

Why Tendenci Chose Python over PHP

Note: this is a repost from the eschipul.com blog and also lives as a help file on Tendenci.

This blog is a WordPress blog written in PHP. And WordPress, which is written in PHP is a great platform when secured properly.

So why did our team choose to rewrite Tendenci Open Source and in the Python Programming language? It is a question I get asked a lot. We’ve never been a company that likes to talk in the negative if at all possible, yet it is important to talk about the megatrends going on given we work with associations and nonprofits.

Python Growing in Academia
Why Python instead of PHP for Tendenci

Source: https://www.upguard.com/blog/which-web-programming-language-is-the-most-secure

programming vulnerabilities
Vulnerabilities in each language

Source: http://info.whitehatsec.com/rs/whitehatsecurity/images/statsreport2014-20140410.pdf

security-report

Source: http://info.whitehatsec.com/rs/whitehatsecurity/images/statsreport2014-20140410.pdf

Popularity of a language is a trend, and what you want is as many developers familiar and liking the language of your open source project as possible. This means you have a better chance to have a secure web site and therefore a more secure future.

To be fair – as Disraeli said – “lies, damn lies and statistics” – so there is no one perfectly secure language any more than there is a perfectly “safe” hammer. There will always be operator error and programmers make mistakes.

So we’re not saying Python is perfect, and all of us have used most of the other languages on those charts at some point. We’re just saying we are pleased so many other programmers also like Python and Open Source. THAT is the best that can be done to secure your future online. Secure code that you can examine yourself and even host yourself!

Addendum: As I post this on the Tendenci Blog. Given we focus on non-profits, associations, memberships, education, medical, religious – basically the do-good cause-based organizations, I believe it is particularly important that the project is as transparent as possible. Sometimes it is healthy to inform everyone of WHY we made a decision seven years ago. Python was the right call.

blog.tendenci.com

Open Source Technology from the NonProfit Point of View – Houston NetSquared’s April Topic

On Tuesday, I had the honor of co-hosting this month’s Houston NetSquared meetup featuring Jeff D. Frey, the Web services manager in Rice University’s IT Department.  Jeff’s role at Rice is to help all the different departments within the university as well as nonprofits in the Houston community identify the best software tools and then install and integrate them.

Jeff spoke to the members of the  Houston NetSquared on the good and bad things about open source technologies.  He approached the topic  from the perspective of nonprofit organizations and their communities based on his experience working with all kinds of software and hardware solutions at Rice.  Here’s a wrap-up of Jeff Frey’s presentation “Open Source … and Six Blind Men.”

Six Blind Men?

Jeff began his presentation with one of my favorite parable’s 6 Blind Men and an Elephant. Each man had a different impression of the Elephant after feeling just one part.

Jeff Frey uses this parable to explain that “Much like the elephant trainer, my role is to basically show you around the elephant of open source”.

The Open Source Elephant

Just like the six blind men in the parable, Jeff described that there are six different perspectives in nonprofit organizations, and each of them typically only sees one piece of the total project being planned.

Jeff describes the people that typically see each perspective’s piece of the open source elephant and talks about what he recommends nonprofit organizations should be aware of with open source tools to make sure each group’s perspective fits into the total picture and everyone in  your nonprofit organization likes to use the new solution.

The 6 Perspectives of Open Source:

1)      Community

—  This is the group of people that follow the open source software or product and is usually a tight knit group.

According to Jeff, nonprofit organizations should take a look at how strong an open source’s community is.  A strong community means the product will probably be better supported and have more “one off” or edge-case customizations that your nonprofit can benefit from for free or lower cost than if you had to pay for the custom development yourself.

2)      Customers

–-  The folks that a nonprofit serves including your members, donors, and visitors to your website.

The great thing about open source from your customers’ perspective is that it can look really high end, has improved stability, and has fewer compatibility issues with web browsers.  Open source makes it easier for you to look like you know what you are doing to your customers even if you can barely use a WYSIWYG editor.

3)      Management

–-  Your Board members, Executive Director, and the decision makers at your organization.

From the perspective of your Board and those approving the budget for the project, open source is a very appealing option.  There are little to no software costs, no programmers, and the potential for no hardware costs.  As Jeff put it “You can basically run your whole nonprofit on open source tools with virtually no software costs.”

4)      Employees

-–  The people most affected by the software package you select, the ones using it daily and sometimes this includes your volunteers.

Your employees and volunteers using the software everyday will want to know that the software will work and will be easy to use.  Different open source software options have varying levels of features and ease of use.  You’ll want to look at how much training your employees will need before they use the new product and if it has the features your organization needs.  Jeff suggests starting with something little that your staff does daily with the current solution and see how the proposed software performs with that task.  Then keep adding new daily tasks, one at a time, and test them before deciding on a particular software product.

5)      Developers

–-  The application developers that constantly support and add new features and functionality to the open source software.

“It wouldn’t be an open source product without having developers”, Jeff rightly states.  When looking at open source software, you should find out what are the code base standards and ask if there is a good, available API.  Find out what the language on which the software is built because some are more difficult to use, which increases programming hours for custom projects.

6)      Support Staff

—  These are your designated “power users” and can be internal or external to your organization.  Often this will be an IT consulting firm or Web design agency who customizes and updates your software.

When looking at open source solutions from the perspective of your power users, you will want to find an open source product that has a strong network of partners and support professionals.  Ask if the software has a regular schedule to roll out new versions and patches and find out about the hardware, network, back-up and maintenance processes and costs when comparing software.

Tell Us which of the six perspectives you think you fall under in our comments below!

I probably fall under the power user perspective in most cases, and in particular when talking about Tendenci.  I spend most of my days inside a Tendenci website updating content, adding events, creating training documentation, etc. and I honestly love it.

Has the Elephant Left the Building?

With all the excitement we’ve felt here with the open source release of Tendenci last week – we also recognize the hesitation and concerns from our current clients and their community.  We want to keep the conversation going to address your questions and I thought I’d add my personal takeaways from Jeff’s Netsquared presentation and invite you to tell me what else you’d like to talk about.

Jeff Frey surprised us with a slide on Tendenci in his presentation and Jeff shared his feedback on our newly open source CMS to the Houston NetSquared members.  Here’s what he thinks about Tendenci:

  • Tendenci has a very new/young community of developers and followers and his advice to me was to “get in the mindset of moving in the direction of building your developer community”.
  • Tendenci is written in the Python programming language, which is the language that “all the cool kids are coding in now,” including what Rice undergrad programmers are learning.
  • Unlike a lot of open source software, Tendenci has more than just a forum to support its clients and community; it has real people to call, email, and come Hang Out with.

One important quote I heard Jeff say at NetSquared was “Open source doesn’t mean free as in no cost, it means free as in liberated.” And throughout Jeff’s presentation, he reiterated that while the software code is freely available, and anyone can download a copy and start using it for free… there are different costs associated with open source software that can include things like hosting, IT support staff, development to customize the platform for your organization, and hardware costs.

To provide you with an example: you can create a free twitter account to use but you then may have to pay for…

  • the computer or laptop that you access twitter from,
  • the internet connection to connect to twitter,  Then,
  • the designer to customize your twitter landing page,
  • the staff member or to manage your twitter communications,
  • the web marketing agency to train you and your staff how to use twitter…

As you can see, each of these extras come with an extra cost.  It is no different with other open source software, including Tendenci.  Open source software does greatly reduce the total cost of the project so that more nonprofit organizations can afford to have better tools to operate online and offline.

I want to leave you with a comment from an audience member Tuesday night at NetSquared:

” The thing about Open Source that I love is there is a huge community helping find the bugs before I have to find it, and fixes it, and I don’t have to pay for it or deal with it.”