Recent CPAN uploads - MetaCPAN


Collection of TableData:: modules that contain older CPAN releases data

Changes for 20210927.0 - 2021-09-27

  • First release.
2021.09.27 16:35


Role to require() from Dist::Zilla build files

Changes for 0.001 - 2021-09-27

  • First release.
2021.09.27 16:26


Plugin to use when building TableData::* distribution

Changes for 0.002 - 2021-09-27

  • Show get_row_count() example in generated Synopsis.
2021.09.27 16:26


Plugin to use when building TableData::* distribution

Changes for 0.001 - 2021-09-27

  • First release.
2021.09.27 16:26


Plugin to use when building TableData::* distribution

Changes for 0.001 - 2021-09-27

  • First release.
2021.09.27 16:25


Utilities related to browsers, particularly modern GUI ones

Changes for 0.015 - 2021-09-27

  • [cli pause-and-unpause-browsers] Tweak option --periods (--period for the singular version).
2021.09.27 16:25


Silverpeak Orchestrator REST API client library

Changes for 0.002000 - 2021-09-27T17:42:44+02:00

  • fix hardcoded template group name instead of NET_SILVERPEAK_ORCHESTRATOR_POLICY environment variable
  • skip appliance tests if Orchestrator has none assigned
  • don't expect existing template group NET_SILVERPEAK_ORCHESTRATOR_POLICY for tests but create it
  • add create_templategroup method
  • add update_templates_of_templategroup method
  • add delete_templategroup method
  • add list_addressgroup_names method
  • add list_addressgroups method
  • add create_or_update_addressgroup method
  • add get_addressgroup method
  • add delete_addressgr…
2021.09.27 15:50


Wrap Redis inside OpenTracing
2021.09.27 15:14


Choose items from a list interactively.

Changes for 1.740 - 2021-09-27

  • Bugfix in import the required constants.
2021.09.27 14:37


Parse a Unisyn expression.
2021.09.27 14:22




























Active questions tagged perl - Stack Overflow

How do I run perl scripts in parallel and capture outputs in files?

PERL - work with txt files, and extracting the data in different variables

List of Perl commands to manipulate Windows Excel with Win32::OLE module [closed]

How to provide user a keycode after he has donated via a Paypal Donate button? [closed]

Perl printf to use commas as thousands-separator

Perl unite 2 regexps into 1

Migrate Public/Private Keys from one programming language to other for Signing Payload and verifying them

Unable to merge files in required format

How to fix Verilog::VCD::Writer error: Can't locate object method addSignal?

How to use Perl to replace multiple lines containing character '/' and new line?

Aligning strings in the UTF-8 using the `printf`, `sprintf` functions in Perl

In perl match a dot when there're at least three words before it

how to extract common lines across multiple file?

How can I create 1000 files that I can use to test a script?

altering the sequence of words using Perl Regex [closed]

convert UNIX epoch time to ISO8601 in a stream of data with perl

Can't locate File/ in @INC

Mailchimp v3.0 API, using Perl Curl

YAML merging with custom methods

Trying to install Perl-Mysql DBD, mysql_config can't be found

News and Blogs

Articles on - programming news, code and culture

Perl / Unix One-liner Cage Match, Part 2

In Part 1, I compared Perl’s regexp features with sed and Awk. In this concluding part, I’ll cover examples that make use of Perl’s extensive built-in features and third-party modules.

Bigger library

Perl has a much bigger collection of built-in functions compared to Awk. For command-line usage, I often need tr, join, map and grep. I like that arrays and hashes are distinct in Perl and applying sort on these data types is much simpler compared to Awk.

Append items to a list

This problem wants to append columns to rows that have too few, like the b, c and d rows:


This app…

2021.05.25 02:54

Perl / Unix One-liner Cage Match, Part 1

A shell (like Bash) provides built-in commands and scripting features to easily solve and automate various tasks. External commands like grep, sed, Awk, sort, find, or parallel can be combined to work with each other. Sometimes you can use Perl either as a single replacement or a complement to them for specific use cases.

Perl is the most robust portable option for text processing needs. Perl has a feature rich regular expression engine, built-in functions, an extensive ecosystem, and is quite portable. However, Perl may have slower performance compared to specialized tools and can be more verb…

2021.05.12 02:54

Downloading and Installing Perl in 2021

[This article is part of our Popular articles project to update for contemporary practices]

If you’re reading this article, you’re likely looking for a simple way to download and install the Perl programming language. Or you already have Perl installed as part of your operating system, but it’s older than the currently-supported versions (5.32.1 or 5.30.3) and you’d like to use the latest and greatest features. The download options may seem daunting, especially if you’re new to computers or programming. We’ll take things step by step, and soon you’ll be on your way to…

2021.04.27 04:05

Interview: Trying to Catch Paul "LeoNerd" Evans

Paul “LeoNerd” Evans is a CPAN author, blogger, and core Perl contributor. He introduced the experimental isa operator in Perl 5.32 and the try/catch syntax in an upcoming version.

Tell me a little about yourself and your background; whatever you feel comfortable sharing.

Lets see—I’m going to do this in reverse chronological order.

Currently I’m a self-employed contractor, splitting my time between Perl and other computery things, and electronics. Most of the jobs I’ve had before I did that were based on Perl, with the minor exception of a little Internet startup company called &ldqu…

2021.03.30 01:24

Why I wrote Net::Google::CivicInformation

Before I became a computer programmer, I tried my hand at being a human programmer, in the form of a wordsmith, as I called myself then. I had various jobs as a writer, editor, translator and journalist, but I met with little success, for two main reasons. In those days you needed a publisher to find your work interesting enough to publish before anyone could read it, and that was a pretty high bar. And in the second place, it was difficult to get the humans to react to the content I wrote (I’m still exercised that the movie reviewer would get more letters to the editor than I did after…

2021.03.09 19:35

The Hijacking of

For a week we lost control of the domain. Now that the incident has died down, we can explain some of what happened and how we handled it. This incident only affected the domain ownership of and there was no other compromise of community resources. This website was still there, but DNS was handing out different IP numbers.

First, this wasn’t an issue of not renewing the domain. That would have been a better situation for us because there’s a grace period.

Second, to be very clear, I’m just an editor for the website that uses the domain. This means that I’m…

2021.02.28 08:59

The Perl Foundation

CAT open session – your thoughts and ideas

TPF is hosting a community open session to discuss the Community Affairs Team (CAT) and next steps. We want your thoughts and your ideas.

It would be great to see a broad section of the community, including people who don't normally engage in these discussions. If you have something to say, this is your opportunity.

We would like as many people to take part is possible and have a couple of dates available. * Wednesday 20 October * Thursday 21 October * Wednesday 24 November * Thursday 25 November

Please complete the poll in this link by 10 October so we can choose a date that suits the most peopl…

2021.09.27 04:56

Maintaining Perl 5 Core (Tony Cook): August 2021 Report

Tony reports his August progress on maintaining the Perl 5 core: ``` Approximately 40 tickets were reviewed, and 7 patches were applied

[Hours] [Activity] 7.45 #18606 produce another case where the implementation fails, comment, try to work on a fix #18606 research, code on making a new stub cv #18606 more try to make stub cv #18606 get it seemingly working, needs more tests 0.31 #18746 reply to comment #18746 review and apply to blead 4.26 #18820 reply to comment #18820 review new changes, look over related code #18820 try benchmarking #18820 more try benchmarking, can’t come to any conclusion…

2021.09.26 09:00

Maintaining Perl 5 Core (Dave Mitchell): August 2021 Report

This is my final report for my second TPF perl5 maintenance grant, which has now come to an end. (The good news is that a new grant has already been approved.)

Many thanks to my (now former) grant monitors for their endless +1's :-)

First: the 'what I did last month' part of this report covers all of August and up to 10th September. I made a start on getting the build back into shape by starting to look at things like failing smokes and 'TEST -deparse' failures.

``` SUMMARY: 0:30 fix Text::Tabs failing smoke 4:13 fix up deparsing

7:53 process p5p mailbox

12:36 TOTAL (HH::MM) ```

Now a brief review o…

2021.09.26 08:56

Next steps of research study launched - interviewees wanted

Dr. Ann Barcomb, an assistant professor at the University of Calgary, is conducting a study on practices for managing episodic, or occasional, contributors to the Perl/Raku project, in collaboration with The Perl Foundation. Following on from the survey she launched earlier in the year, she would like to interview community managers/leaders or those who have an overview of the participation of numerous contributors.

The interview will look at your experiences working with episodic contributors, and episodic contributions, in the Perl/Raku community. Additionally, she will ask if there is any di…

2021.09.17 09:07

Board update September 2021

Board update

There have been many changes at the Foundation over the last year including a number of changes to our Board.


At our last formal meeting in August, we welcomed Daniel Sockwell (Codesections) to the Board of Directors.

Daniel has worked with the Foundation over the last year by serving on the Legal/Commercial Committee and by participating in the monthly community meetings. In his responses to questions during nomination, Daniel expressed a desire to bring Raku Steering Council representation to the Board and "to help [the Board] and the RSC/the Raku community more broadly bett…

2021.09.16 04:06

Raku Dispatch and Compiler Improvements: Grant Report Jonathan Worthington

Jonathan reports a lot of progress on his grant. We would like to thank the sponsors and Jonathan for his work.

Here is his report:

Raku Dispatch and Compiler Improvements Grant Update

Since the approval of my grant in late June, I have been making a lot of progress with it. The grant allowed me to dedicate the vast majority of my working time in July and August to Raku (although I was away for 2 weeks of August on vacation). This report covers the work done between grant approval up to the end of August.

The key goal of the grant is to bring my work on a new generalized dispatch mechanism to the…

2021.09.14 02:37

Latest Perl Introduction 2021 Movie

Perl version 5.36. isa operator. try catch syntax. enable warnings. use v5.36. use v7. The introduction of the members of Perl core team.

2021.09.25 04:50

Perl Weekly Challenge 131: Consecutive Arrays

These are some answers to task 1 of the Week 131 of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on September 26, 2021 at 24:00). This blog post offers some solutions to this challenge, please don’t read on if you intend to complete the challenge on your own.

You are given a sorted list of unique positive integers.

Write a script to return list of arrays where the arrays are consecutive integers.

Example 1:

Input:  (1, 2, 3, 6, 7, 8, 9)
Output: ([1, 2, 3], [6, 7, 8, 9])

Example 2:

Input:  (11, 12, 14, 17, 18, 1…
2021.09.25 00:14

My Favorite Modules: if

My blog post My Favorite Warnings: redundant and missing touched on the use of the if module. Comments on that post made me think it deserved a top-level treatment, expanding on (though not necessarily improving on) Aristotle's comment.

The if module is a way to conditionally load another module and call its import() or unimport() method. Sample usages are

use if CONDITION, MODULE, ...; # load and import
no if CONDITION, MODULE, ...;  # load and unimport

In actual use the CONDITION is an expression that is evaluated at compile time. If that expression is true the named module will be loaded and…

2021.09.24 21:25

SPVM 0.9014 Release - add class, method, static keyword, omit SPVM:: namespace

I release SPVM 0.9014. Latest releases have some big changes.

add class, method, static keyword, omit SPVM:: namespace, and remove sub, self, keyword.


# lib/SPVM/Point.spvm
package SPVM::Point {
  has x : int;
  has y : int;

sub new : SPVM::Point () {
return new SPVM::Point;

sub clear : void ($self : self) {
$self->{x} = 0;
$self->{y} = 0;


# lib/SPVM/Point.spvm
class Point {
  has x : int;
  has y : int;

static method new : Point () {
return new Point;

method clear : void () {
$self->{x} = 0;
$self->{y} = 0;

I imagine Moo…

2021.09.21 09:55

Perl Weekly Challenge 130: Odd Number and Binary Search Tree

These are some answers to the Week 130 of the Perl Weekly Challenge organized by Mohammad S. Anwar.

Spoiler Alert: This weekly challenge deadline is due in a few days from now (on September 19, 2021 at 24:00). This blog post offers some solutions to this challenge, please don’t read on if you intend to complete the challenge on your own.

Task 1: Odd Number

You are given an array of positive integers, such that all the numbers appear even number of times except one number.

Write a script to find that integer.

Example 1:

Input: @N = (2, 5, 4, 4, 5, 5, 2)
Output: 5 as it appears 3 times in the array wh…
2021.09.16 21:58

Monthly Report - August

Finally enjoying again ...

Ever since I joined Oleeo, I keep talking about it in every monthly report.


Well, right from day one, I have been getting to work on something I never worked on before. To be honest with you, I was expecting to fight with good old CGI ridden code mostly. I find myself lucky to have such a great supporting team. Right now I am playing with Elastic Search and I am enjoying it. Thanks to CPAN for such a cool library, Search::Elasticsearch.

Did you notice last monthly report was published on 22nd Aug?

I have never been so late ever since I started the series of monthly r…

2021.09.16 04:31

Perl Hacks

Replacing CPAN RT

[Update: the CPAN Request Tracker was saved. It’s now run by a new team of volunteers and none of my suggestions below are required.]

Two weeks ago, we learned that the CPAN Request Tracker was closing down early next year. I proposed a plan that CPAN authors could follow to ensure that their users can still find somewhere to report bugs in modules (and, perhaps more importantly, to see what bugs have already been reported in modules).

But that’s only part of the problem. In fact, it’s probably a minor part of the problem. If you’re an active CPAN author, then you probably already knew about the…

2020.12.16 17:24

RT – Action Plan for CPAN Authors

CPAN RT is going away. CPAN authors have until the beginning of March to extract any useful information from it.

RT is the “Request Tracker”, a bug tracking system that is written by Best Practical. For almost as long as I can remember, anyone who uploads a module to CPAN gets a free ticket queue for their module at MetaCPAN assumes that’s where people should report bugs in your module and helpfully adds an “issues” link that goes to the appropriate page in RT.

But now that system is going away. It will be switched off on the 1st March 2021. The Perl NOC team is spread pretty thinly…

2020.12.06 12:40

Down the rabbit hole

Blog posts are like busses. You wait months for one and then two come along on consecutive days!

Yesterday I wrote about how we didn’t need a blogging platform for the Perl community – all we really needed was a good-looking feed aggregator. I mentioned Perlsphere as one such aggregator.

Then Matthew commented, saying that Perlsphere looked a bit broken as Dave Cantrell’s posts from a few years ago frequently pop up there as new posts. I had a quick look at the problem and couldn’t quite work out what was going on. His web feed seems valid, but Perlsphere didn’t seem to recognise the dates of th…

2020.09.18 15:24

Blogging for Perl

I think it was at YAPC Copenhagen in 2008 that a small group of us first discussed the idea of building a shared blogging platform for the Perl community. It was over a year later that we launched

I remember a lot of discussions over that time where we tried to thrash out exactly what we wanted to build. I know that one of my main drivers was that I wanted to replace the journals feature of use.perl. For those of you too young to remember, use.perl was a Perl community web site from the dawn of time. The site ran Perl news on its front page, but users could also have their own j…

2020.09.17 20:10

The Best of Perl Hacks

What do you do when you’re stuck inside because Coronavirus means that your country is in lockdown? Well, you write a book, of course. Or, to be more accurate, you cobble together fifty or so old blog posts into a book.

So that’s what I’ve done. Now you can read some of your favourite Perl Hacks blog posts in a handy Kindle book. Other ebook marketplaces are, of course, available – but I haven’t had the time to make a version that’s available from anywhere else yet. That might follow if enough people ask for it.

The book is, predictably, called The Best of Perl Hacks and it’s available from Amaz…

2020.04.07 15:05

PerlCon Europe 2019

Last week I was in Riga for this year’s European PerlCon (the conference formerly known as YAPC::Europe). As has become traditional, here’s my report of the conference.

My conference began on Tuesday night at the pre-conference meet-up. Most people get into town on the night before the conference starts and the organisers always designate a local bar as a meeting place. This time, as the conference was being held in a hotel, the meeting place was a room in the hotel just outside the main conference room. It’s always good to meet up with friends who you might not have seen since the previous con…

2019.08.11 13:40

Perl Weekly newsletter

#531 - Legacy code

Hi there

I like working on legacy code whether it is Perl, Python or some other language, because it is code that is already very valuable to the organization that uses it. It is great to help the maintainers understand the code better and to give them confidence in making changes to the code.

There are a number of language specific tools that can help you while dealing with legacy code. For example Perl Critic which is mentioned in at least two posts this edition. There are more generic things, like setting up a good CI system which is mentioned by Gugod.

The ideal situation is when both managem…

2021.09.27 10:00

#530 - Outreachy 2021

Hi there

If you remember, I mentioned the Outreachy program in the editorial of the weekly newsletter edition #522. It has finally come to an end as Rosheen Naeem successfully completed the internship as reported by the TPF in a blog post. Congratulations Rosheen.

The Perl Foundation is looking for mentors and project ideas for the next Outreachy rounds. If you have Perl or Raku project ideas, please get in touch with TPF.

Many years ago, I was approached for help by the Open Food Facts team as they found out about my distribution, Food::ECodes. Unfortunately it didn't work out as I was too busy…

2021.09.20 10:00

#529 - KöMaL for the math enthusiasts

Hi there!

A long long time ago, when I was in high school, I participated in the annual competition of KöMaL, the Mathematical and Physical Journal for High Schools. (Look for the little UK flag for the English version). Back then we sent in the solution by snail-mail and we only had to write our name to be identified. However people with very common names were asked to include a 3-digit number between their names. There was no verification that two people with the exact same name did not pick the same number, but the chances were slim. Because my name is way too common in Hungary I picked the…

2021.09.13 10:00

#528 - Legacy Code

Hi there

How old is the Perl code that you work on currently?

Curtis wrote an interesting blog post talking about dealing with legacy code.

After a long time, I got the opportunity to work with good old CGI. It reminds me of my early learning days. Talking about CGI, I came across fun blog post talking about Migrating a Perl CGI application to AWS Lambda.

Please do share anything interesting you are trying using Perl. I am currently working on Elastic Search using Perl. As always CPAN provides great support e.g. Search::Elasticsearch.

What else changed in your routine?

For me, the school run is back…

2021.09.06 10:00

#527 - New school-year?

Hi there,

The number of posts has been really low in the last couple of weeks. I really hope that with the new school-year in the northern hemisphere, we'll see an uptick in Perl-related content.


I just saw a Tweet explaining why the person does not wear a mask. He writes because he is vaccinated he isn't likely to be infected and he accepts the risks. Well, I really try to avoid arguing with strangers on the Internet so I did not write to him, but basically he said that he accepts the risk of endangering others.

In reality he spread two types of viruses. Potentially he spreads the Covid19…

2021.08.30 10:00

#526 - Politics in Programming?

Hi there

I came across a blog post by Curtis titled Politics in Programming. As is always the case, it touched on sensitive topics. You may or may not agree with his point of view but it is worth a read, IMHO.

Let me confess, ever since Cor was renamed to Corinna, I always double check whether there is a double "r" or a double "n" in the name. I get it wrong all the time. Joking apart, I am very happy that Corinna is being discussed on so many different public platforms, a BIG thanks to Curtis and his team.

There was another topic discussed on Facebook, "Data structures in Perl". It brought back…

2021.08.23 10:00


Live coding session with Gabor Szabo

Today I was invited to join Gabor Szabo for a live pair programming session, where we worked on adding Docker and CI to his course management application. You can view the video of our informal competition who is the worst typist here.

At first I was bit skeptical about the concept of live coding (who wants to watch people google^w code for two hours?), but in the end it was a funny and informative (for me) session. Maybe I'm just totally deprived of live human interaction (thanks, Corona), but I think I'd enjoy similar sessions also under normal circumstances.

Things I learned
  • I forgot a lot of…

Two Dist::Zilla questions (META.yml; user config)

During the great RT will be shutdown craze earlier this year, I updated my Dist::Zilla setup to use a custom author bundle (Dist::Zilla::PluginBundle::Author::DOMM) so I can unify my Dist::Zilla config in one place (instead of copying dist.ini from project to project, adding & modifying it from time to time, but never backporting improvements to older projects).

Two of my decisions might have been not too smart (as indicated by various pull requests), so I'm now looking for feedback...

META.yml vs META.json?

I stopped generating META.yml files and now only generate META.json. As far as I can tell…

Bulk downloading all episodes of a podcast

In some regards, I'm a very old school person. For example I do not like the concept of streaming audio (via Spotify I want MP3s on my hard disk (and/or vinyl on my record player). I want access to my music when I'm offline (and I'm offline a lot) and without using a so-called smart phone (I prefer vintage USB-stick MP3 players). My partner thinks the same (I guess 25+ years of my propaganda had some influence..).

But "modern" sites make it rather hard to actually download content (even if it's free). They offer links to a myriad of apps, but often no download button. At least a lot of…

Advent of Code Day 12 - sailing to a pause

This was another fun one. It took me some time to get the logic right (or left?), but in the end I came up with a nice solution. BTW, this will be the last daily blog post, as I'll have to finish some work projects, and start with some holiday projects.

Part 1
my @in  = map { [/^(\w)(\d+)$/] } <>;
my @dir = qw(N E S W);
my $cur = 1;
my $r   = 0;
my $c   = 0;

We again parse the map into a list of ops and values. Then we set up some things we'll need, like the list of directions and the current heading ($cur) which is an index into the dir-array. $r and $c

Advent of Code Day 11 - slow SeatGoL

Finally, some Game of Life

Part 1

Today I needed quite a bit of code, so let's split it up:

my @map = map { chomp; [ split // ] } <>;
my $h   = @map;
my $w   = $map[0]->@*;
my $occ = 0;
my $max = 4;
my @around =
    ( [ -1, -1 ], [ -1, 0 ], [ -1, 1 ], [ 0, -1 ], [ 0, 1 ], [ 1, -1 ], [ 1, 0 ], [ 1, 1 ] );

After getting the input and storing it into a 2-dimensional list, I set up some other things we'll need: the **h**eight and **w**idth of the map, the number of occupied seats, the maximum number of neighbors and a list of "vectors" to look around (left… Blog


Das System-Perl zu verwenden hat viele Nachteile. Diese können behoben werden, wenn man ein eigenes Perl in seinem Benutzerverzeichnis installiert. Mit dem Werkzeug `perlbrew` kannst du mehrere Perl-Installationen nebeneinander auf einem System konfliktfrei betreiben.
2021.07.14 10:00

Bericht vom Deutschen Perl-/Raku-Workshop 2021

Der Deutsche Perl-/Raku-Workshop ("German Perl Workshop", GPW) ist eine Institution in der Perl-Community: Seit 1999 gibt es diese Konferenz rund um Perl (und seit ein paar Jahren Raku). Damit ist der GPW eine der ältesten Perl-Veranstaltungen überhaupt.
2021.06.23 10:00

Kommandozeilenwerkzeuge mit App::Cmd

Das Schreiben von CLI-Tools erfordert einiges an Infrastrukturcode, um ein komfortables Tool mit Kommandos zu erstellen. Teile dieses Codes gleichen sich bei der Implementierung von Unterkommandos. Die Distribution App::Cmd hilft mit Mitteln der objektorientierten Entwicklung dabei, ein komfortables CLI-Tool schnell und erweiterbar zu implementieren.
2021.02.15 10:00

An Modul-Autoren: Badges für CPANCover

Sowohl für Nutzer als auch für Entwickler ist es ganz schön, wenn auf einen Blick der Zustand eines Moduls ersichtlich ist: Sind Fehler bekannt? Kann das Projekt gebaut werden? Wie ist die Testabdeckung?
2021.02.09 10:00

CPAN-News Januar 2021

Der Januar ist rum, Zeit mal nachzuschauen was wir im Januar so alles auf CPAN geladen haben.
2021.02.06 10:00

Sicherheit für Perl-Anwendungen: fail2ban

Ist eine Webanwendung öffentlich erreichbar, wird es nicht lange dauern und irgendwelche Bots versuchen sich anzumelden. Oder es werden wild irgendwelche URLs aufgerufen. Auch wenn die Anmeldeversuche wahrscheinlich scheitern, geht die Bot-Aktivität zu Lasten der Webanwendung. Und mit genügend versuchen klappt es vielleicht doch mal, dass sich jemand Unbefugtes anmeldet.
2021.02.03 10:00

DEV Community

Electron Adventures: Episode 60: Notebook Perl Engine

We did Ruby, we did Python, time for a classic language you probably aren't seeing much of these days - Perl.

But this isn't just a Perl episode. As doing decent session isolation on Perl side would be quite difficult (and to be honest, even our Ruby/Python versions only did fairly limited isolation), we're flipping how things work:

  • previously we had one language server instance, and multiple sessions there
  • now we'll create a new language server instance for every session.
#!/usr/bin/env perl

use JSON;

sub eval_and_capture {
  my ($code) = @_;

  my $output;
  do {
2021.09.22 14:56

CPAN installation as a test, with GitHub workflow

If I made a distribution Foo and uploaded it to CPAN, I'd expect that it is install-able via various CPAN clients such as cpan, cpanm, cpm, that is, from a fresh perl installation, these commands should be successful:

cpan Foo
cpanm Foo
cpm install -g Foo

What's a bit non-obvious is that this requires a chain of conventions to be satisfied in order to happen smoothly... distribution Foo needs to properly ship with build procedure / installer and META.json, in which all dependencies are correctly declared.

But that is not enough, even if I correctly authored all the meta-data in distribution Foo…

2021.09.22 00:48

Everyone’s a (Perl) critic, and you can be too!

The perlcritic tool is often your first defense against “awkward, hard to read, error-prone, or unconventional constructs in your code,” per its description. It’s part of a class of programs historically known as linters, so-called because like a clothes dryer machine’s lint trap, they “detect small errors with big effects.” (Another such linter is perltidy, which I’ve referenced in the past.)

You can use perlcritic at the command line, integrated with your editor, as a git pre-commit hook, or (my preference) as part of your author tests. It’s driven by policies, individual modules that check y…

2021.09.21 14:00

CPAN Release of TooMuchCode 0.17

Perl::Critic::TooMuchCode is a set of policy addons that generally checks for dead code or redundant code.

I feel grateful that this small project starts to draw some attention and endorsement and now it is receiving pull-requests from the Perl/CPAN community.

In version 0.17 we improved the policy ProhibitDuplicateLiteral and now it we can whitelist strings and numbers in configurations. If you somehow really need to use number 42 and "forty two" literally in the code many times, you list them in .perlcriticrc:

whitelist = "forty two" 42

Thanks to @ferki f…

2021.09.20 23:05

Weekly Challenge 131

Challenge, My solutions

TASK #1 › Consecutive Arrays Task

Submitted by: Mark Anderson

You are given a sorted list of unique positive integers.

Write a script to return list of arrays where the arrays are consecutive integers.

My solution

This is pretty straight forward, so doesn't need much explanation. Even though the task says the list is ordered and unique, I do this anyway. You never know what input someone will provide!

I seed the @output array with the first number. Then then work through each number removing it from the array. If that number is one more than the last number in the last ar…

2021.09.20 12:30

The ephemeral miniconf - Planning full... and frozen!

Updated schedule

This is an updated version of the schedule:
The ephemeral miniconf planning

Hours can vary a bit (if a speaker needs to adjust or if I need) but overall planning will look like this (3~4 hours of presentations).

The planning is given in UTC+1 and you can check your local time on this page

No more lightning talks

Please note that lightning talks are no longer a thing so... You can now safely ignore my Call for lightning talks from last week 😀

How to attend

Please note that the ephemeral miniconf will be in less than 2 months from now!

Remember the event will be free and online.

More information on this announcem…

2021.09.20 06:32


These Binary Trees are Odd

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given an array of positive integers, such that all the numbers appear even number of times except one number. Write a script to find that integer.


use strict;
use warnings;
sub find_odd_occurring{
    my %counts;
    for my $x (@_){
    for my $x (keys %counts){
        return $x if $counts{$x} % 2 != 0;

    print find_odd_occurring(2, 5, 4, 4, 5, 5, 2) . "\n";
    print find_odd_occurring(1, 2, 3, 4, 3, 2, 1, 4, 4) . "\n…
2021.09.19 12:37

Two Exercises in Fundamental Data Structures

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given a tree and a node of the given tree. Write a script to find out the distance of the given node from the root.


use strict;
use warnings;
package Tree129{
    use boolean;  
    use Tie::RefHash;
    use Class::Struct; 

    package Node{
        use boolean;  
        use Class::Struct; 
            value => q/$/,

    package Edge{
        use boolean;  
        use Class::Struct; 
2021.09.12 23:53

A Platform for Every Departing Sub-Matrix

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given m x n binary matrix having 0 or 1. Write a script to find out maximum sub-matrix having only 0.


use strict;
use warnings;
use Tree::Suffix; 

sub maximum_sub_matrix{
    my @matrix = @_;
    my @sub_matrix;

    my %indices;  
    my @indices_maximum;
    my $indices_previous = "";
    my $indices_current = "";
    my $tree = new Tree::Suffix(); 
    for my $i (0 .. @matrix - 1){
        $indices_current = "";
        for my $j (0 .. @{$matrix[0]} - 1…
2021.09.05 23:59

Conflicting Lists and Intervals

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given two sets with unique numbers. Write a script to figure out if they are disjoint.


use strict;
use warnings;
use boolean;

sub disjoint{
    my($list1, $list2) = @_;
    my @a = map { my $n = $_; grep  $n == $_ , @{$list2} }  @{$list1};
    return boolean(@a == 0);#boolean() used for better stringification

    my(@S1, @S2);
    @S1 = (1, 2, 5, 3, 4);
    @S2 = (4, 6, 7, 8, 9);
    print disjoint(\@S1, \@S2) . "\n";
    @S1 = (1, 3, 5, 7, 9);
2021.08.29 17:18

Count Numbers / MineSweeper game: The Weekly Challenge 126

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given a positive integer $N. Write a script to print count of numbers from 1 to $N that don’t contain digit 1.


use strict;
use warnings;
sub has_1{
    my($x) = @_;
    return 1 if $x =~ tr/1//d > 0;
    return 0;   

sub count_with_1{
    my($n) = @_;
    my $x = 1;  
    my $count = 0; 
        $count += has_1($x); 
        $x += 1;
        redo if $x <= $n; 
    return $count; 

sub count_without_1{
    my($n) = @_;
    return $n - count_with_1($n…
2021.08.22 17:39

Ugly Numbers / Square Points

The examples used here are from The Weekly Challenge problem statement and demonstrate the working solution.

Part 1

You are given an integer $n >= 1. Write a script to find the $nth Ugly Number.


use strict;
use warnings;
use boolean;

sub prime_factor{
    my $x = shift(@_); 
    my @factors;    
    for (my $y = 2; $y <= $x; $y++){
        next if $x % $y;
        $x /= $y;
        push @factors, $y;
    return @factors;  

sub is_ugly{
    my($x) = @_; 
    for my $factor (prime_factor($x)){
        return false if $factor != 2 && $factor != 3 && $factor !=5…
2021.08.01 17:00

The Perl NOC

Weekend Outage

You may have noticed that some services were unavailable this weekend.  Email continued to flow, and no data was lost.

The short version of the story is that we were bitten by this bug. and learned a lot about how Kubernetes works while we figured out what the issue was.

Sorry for any inconvenience!

2021.05.09 21:29

CPAN Mirror List Changes

We sent the below email to all the CPAN Mirror contacts yesterday:

An Important Update about the CPAN Mirror List

You're receiving this email because you're listed as a contact point for a CPAN mirror. Thank you! The mirror network has been a huge part of CPAN’s success. Soon, the way clients use CPAN mirrors is changing. You don't need to do anything, but after reading this email, you might want to.

Some background: For a long time, when the CPAN client (aka started up for the first time, it prompted users to configure it by picking a nearby mirror. The assumption was that it would be b…

2021.02.22 09:39 hijacked

 The domain was hijacked this morning, and is currently pointing to a parking site.  Work is ongoing to attempt to recover it.

 We encourage you NOT to visit the domain, as there are some signals that it may be related to sites that have distributed malware in the past.

  Some users may have it selected as their CPAN mirror.  To update your mirror in use o conf urllist

# perl -MCPAN -eshell
cpan shell -- CPAN exploration and modules installation (v2.20)
Enter 'h' for help.

cpan[1]> o conf urllist
Please use 'o conf commit' to make the config perma…

2021.01.27 20:01 will sunset on March 1st, 2021

Update 2/21/2021:

Updated information about the future of can be found at

Update 2020-12-13: will be sunset on March 1st, 2021 due to low and declining use.

Back when we started this service, it filled a need by providing a place for CPAN authors to track bug reports and feature requests. In recent years and other sites have added issue tracking to their git repo hosting and many CPAN authors have migrated to these sites.

If you are a CPAN author, there are several tools to help you migrate existing tickets:

    • h…
2020.12.04 17:40 email supported by Pobox

Earlier this year we quietly switched the infrastructure that forwards ${author} email addresses from our home-grown solution to Pobox’s Bulk Forwarding system. Our system wasn’t keeping up with the spam-filtering needs of these widely published email addresses.

Pobox is now detecting over 93% of the incoming email to as spam and taking care of it. That’s tens of thousands of spam emails a day that aren’t forwarded on. (Almost 2.5 million emails a month!) Said another way -- less than 7% of emails sent to are valid!

Beyond improved spam filtering, there’s also better…
2020.04.27 21:19

Perl bugs now on GitHub

For over 17 years, the Perl NOC has hosted an RT instance for Perlbug, the system that tracks and manages Perl bugs and feature requests.  Two weekends ago, it transitioned to GitHub.    Background is available in this thread.
We'd especially like to thank Todd Rinaldo who led the migration and did most of the work.  His attention to detail cannot be understated.  17 years of data (some of which had been migrated to RT from the previous system) required a lot of tweaking and polishing to make it look nice.  His hard work shows in the result.
It's been fun and interesting to support this particular piece…
2019.10.30 20:56

perlancar's blog

List of new CPAN distributions – Aug 2021

dist author first_version latest_version abstract
AI-Perceptron-Simple ELLEDNERA 1.00 1.02 A Newbie Friendly Module to Create, Train, Validate and Test Perceptrons / Neurons
Alien-RtMidi JBARRETT 0.01 0.02 Install RtMidi
Alien-libvterm PEVANS 0.01 0.01 Alien wrapping for libvterm
App-BPOMUtils PERLANCAR 0.001 0.002 List food types in BPOM processed food division
App-DataDirUtils PERLANCAR 0.001 0.003 CLI utilities related to datadirs
App-FileModifyUtils PERLANCAR 0.001 0.002 Utilities related to modifying files
App-MineralUtils PERLANCAR 0.001 0.005 Utilities related to minerals (and mineral supplements)
App-RouterColorizer JMASLAK 1…
2021.09.01 04:27

List of new CPAN distributions – Jul 2021

dist author first_version latest_version abstract
Acme-PERLANCAR-Dummy-POD PERLANCAR 0.001 0.005 Dummy distribution for various POD testing
App-ClipboardUtils PERLANCAR 0.001 0.001 CLI utilities related to clipboard
App-DiffPDFText PERLANCAR 0.001 0.002 Diff the text of two PDF documents
App-Easer POLETTIX 0.001 0.002 Simplify writing (hierarchical) CLI applications
App-ModuleFeaturesUtils PERLANCAR 0.001 0.003 CLI Utilities related to Module::Features
App-Phoebe SCHROEDER 4.01 4.01 a Gemini-based wiki
App-arxiv2bib SLITTL 0.1 0.2 Extract bibliographic data from the arXiv API
App-efm_perl DELPHINUS 0.01 1.0.0 It's new $module
2021.08.01 00:01

List of new CPAN distributions – Jun 2021

dist author first_version latest_version abstract
Acme-CPANModules-OrganizingCPAN PERLANCAR 0.001 0.001 Efforts to organize CPAN
Acme-CPANModules-RandomData PERLANCAR 0.001 0.002 Generating random person (name, title, age, etc)
Acme-CPANModules-RandomPassword PERLANCAR 0.001 0.001 Generating random passwords
Acme-CPANModules-RandomPerson PERLANCAR 0.001 0.001 Generating random person (name, title, age, etc)
Acme-ELLEDNERA-Utils ELLEDNERA 0.01 0.04 Done for the sake of learning 🙂
Acme-MetaSyntactic-boboiboy PERLANCAR 0.001 0.001 The BoboiBoy theme
Acme-MetaSyntactic-ozark PERLANCAR 0.001 0.001 The Ozark theme
2021.07.01 01:24

List of new CPAN distributions – May 2021

dist author first_version latest_version abstract
0.07-TRIAL2 XMIKEW 0 0 Parse and format MySQL dates and times
0.07-TRIAL3 XMIKEW 0 0 Parse and format MySQL dates and times
Acme-CPANModules-HTMLTable PERLANCAR 0.001 0.001 Modules that generate HTML tables
Acme-CPANModules-ManagingMultipleRepositories PERLANCAR 0.001 0.001 Managing multiple repositories
Acme-CPANModules-PERLANCAR-Dummy PERLANCAR 0.001 0.001 A dummy Acme::CPANModules list for testing
Acme-CPANModulesBundle-Import-MJGARDNER PERLANCAR 0.001 0.001 Acme::CPANModules::* created from MJGARDNER's posts
Acme-CoC-Dice BEDOSHI 0.01 0.02 Dice role module for CoC TRPG.
2021.06.01 00:41

Disk space usage of CPAN authors (May 16, 2021 edition)

Prompted by this post on PAUSE running out of disk space, I thought I'd refresh my own post "Top 50 authors by disk space on BackPAN" (Dec 26, 2019) and add a stat for CPAN too. Hopefully this will be a regular post, ish.


Source: (~14MB as of this writing), but more readily used: (~80KB as of this writing).

Total size of CPAN:

% zcat du-k.gz | perl -lne'@F=split /\s+/, $_, 2; $F[1] eq "." and printf "%.1fGB\n", $F[0]/1024/1024 and last'

So, CPAN is not that big by today's…

2021.05.16 08:48

List of new CPAN distributions – Apr 2021

dist author version abstract
Acme-Brainbuz-markdown BRAINBUZ 0.001 turns baubles into trinkets
Acme-CPANModules-BrowsingTableInteractively PERLANCAR 0.001 Creating a palette of visually distinct colors
Acme-CPANModules-CreatingPaletteOfVisuallyDistinctColors PERLANCAR 0.001 Creating a palette of visually distinct colors
Acme-Markdown-Embarrassing CONTRA 0.01 Testing the MetaCPAN Markdown converter
Alien-OpenMP ETJ 0.001 Encapsulate system info for OpenMP
App-Greple-ical UTASHIRO 0.01 Module to support Apple OS X Calendar data
App-MigrateToTest2V0 UTGWKK 0.01 Migrate your tests from Test::More to Test2::V0
App-ProxyThat SIMBAB…
2021.05.01 00:37

# where we turn Perl inside out

(ccclx) 11 great CPAN modules released last week

Updates for great CPAN modules released last week. A module is considered great if its favorites count is greater or equal than 12.

  1. App::cpm - a fast CPAN module installer
    • Version: 0.997007 on 2021-09-23
    • Votes: 54
    • Previous version: 0.997006 was 2 months, 1 day before
  2. App::TimeTracker - time tracking for impatient and lazy command line lovers
    • Version: 3.010 on 2021-09-23
    • Votes: 15
    • Previous version: 3.009 was 7 months, 30 days before
  3. Config::Tiny - Read/Write .ini style files with as little code as possible
    • Version: 2.27 on 2021-09-22
    • Votes: 30
    • Previous version: 2.26 was 7 months, 21 days before
  4. DateTime::Ti…
2021.09.25 22:06

(cdlxxxv) metacpan weekly report - App::cpanminus::reporter

This is the weekly favourites list of CPAN distributions. Votes count: 62

Week's winner (+3): App::cpanminus::reporter

Build date: 2021/09/25 19:57:56 GMT

Clicked for first time:

2021.09.25 21:59

(dvi) stackoverflow perl report

(ccclix) 11 great CPAN modules released last week

Updates for great CPAN modules released last week. A module is considered great if its favorites count is greater or equal than 12.

  1. Catmandu - a data toolkit
    • Version: 1.2016 on 2021-09-17
    • Votes: 21
    • Previous version: 1.2015 was 7 months, 26 days before
  2. Graph - graph data structures and algorithms
    • Version: 0.9724 on 2021-09-13
    • Votes: 26
    • Previous version: 0.9723 was 12 days before
  3. JSON::Validator - Validate data against a JSON schema
    • Version: 4.24 on 2021-09-16
    • Votes: 28
    • Previous version: 4.23 was 19 days before
  4. Mojolicious::Plugin::OpenAPI - OpenAPI / Swagger plugin for Mojolicious
    • Version: 4.06 on 2021-09-14…
2021.09.18 23:03

(dv) stackoverflow perl report

(ccclviii) 11 great CPAN modules released last week

Updates for great CPAN modules released last week. A module is considered great if its favorites count is greater or equal than 12.

  1. App::Netdisco - An open source web-based network management tool.
    • Version: 2.049005 on 2021-09-09
    • Votes: 13
    • Previous version: 2.049004 was 6 days before
  2. DBIx::Lite - Chained and minimal ORM
    • Version: 0.33 on 2021-09-07
    • Votes: 26
    • Previous version: 0.32 was 2 years, 8 months, 8 days before
  3. Mojo::mysql - Mojolicious and Async MySQL/MariaDB
    • Version: 1.23 on 2021-09-11
    • Votes: 34
    • Previous version: 1.21 was 4 months, 13 days before
  4. Mojo::Pg - Mojolicious ♥ PostgreSQL
    • Version: 4.26 on 2…
2021.09.11 16:10

Recent MetaCPAN News

Source code permalinks are here

<p>Versioned permalinks from source code pages are <a href="">now available</a></p>
2020.03.29 00:00

Rendering .md files

<p>We're now rendering .md files as HTML instead of as raw code.</p>
2019.10.18 01:54

The traffic is coming

<p>As <a href="">announced</a> in the Perl NOC, is going to redirect all traffic to MetaCPAN from 25th of June 2018. We are doing lots of work to prepare for this trebling of traffic.</p>
2018.12.02 19:30

MetaHack 2

http: //<br /> <p></p> <p></p>
2017.11.02 19:30

SSL improvements

<p>Our servers have had their SSL configuration upgraded, so we now get an A rating on <a href="">SSL Labs</a>.</p> <p><a href="">Fastly</a> who serve all our content other than the <a href="">api</a> already had tight configs... and now so do we. I'd like to thank then for providing both examples, support and an IRC channel where Donald Stufft from the Python infrastructure team was able to hel…
2014.12.02 19:30

Liquid Web is Sponsoring MetaCPAN

<p>We're immensely pleased to announce that <a href="">Liquid Web Inc.</a> is our newest hosting sponsor. This sponsorship entails 3 powerful machines which are provided and co-located by Liquid Web Inc. Having access to this hardware will allow us greater redundancy in addition to giving us powerful machines to use as a staging area when developing new MetaCPAN features. This is a huge development for us and we'd like to thank Liquid Web Inc. for this very kind donation. More details to come!</p>
2014.11.08 03:00

Perl – *n*x

Quo vadis, Perl?


Foto by Carsten Tolkmit 

We’ve had a week of heated discussion within the Perl 6 community. It is the type of debate where everyone seems to lose. It is not the first time we do this and it certainly won’t be the last. It seems to me that we have one of those about every six months. I decided not to link to many reiterations of the debate in order not to feed the fire.

Before defining sides in the discussion it is important to identify the problems that drives the fears and hopes of the community. I don’t think that the latest round of discussions was about the Perl 6 alias in itself (Raku), but…

2018.11.08 20:18

So, what about (Perl 6) dependencies?

DependenciesWhen I need to program something, most of the time I use Perl 5, Go or Perl 6. Which one depends on the existence and maturity of libraries and the deployment strategy (and I must admit, probably my mood). Most applications I write at work are not that big, but they need to be stable and secure. Some end up in production as an extension or addition to the software that is the core of our authentication and authorisation infrastructure. Some programs are managed by other teams, e.g. of sysadmin-type applications like the monitoring of a complex chain of microservices. Finally, proof of concept…

2017.05.28 11:42

rakudo-pkg: Create OS packages for Rakudo Perl 6 using Docker


There was an interesting discussion on #perl6 ( about the use of rakudobrew as a way for end-users to install Rakudo Perl 6 (see how-to-get-rakudo).

rakudobrew, inspired by perlbrew, is a way to manage (and compile) different versions of rakudo. nine argued that it’s primarily meant as a tool for rakudo developers. Because of the increased complexity (e.g. when dealing with modules) it’s not targeted at end-users. While being a big fan of rakudobrew, I agree with nine.

The problem is that there are no Linux binaries on the download page (there are for MacOS and Windows), so user…

2016.09.05 10:41

Vim as a Perl 6 editor

EDITED on 20170211: syntastic-perl6 configuration changes

If you’re a Vim user you probably use it for almost everything. Out of the box, Perl 6 support is rather limited. That’s why many people use editors like Atom for Perl 6 code.

What if with a few plugins you could configure vim to be a great Perl 6 editor? I made the following notes while configuring Vim on my main machine running Ubuntu 16.04. The instructions should be trivially easy to port to other distributions or Operating Systems. Skip the applicable steps if you already have a working vim setup (i.e. do not overwrite you .vimrc fil…

2016.08.20 23:17

Please test: first release of syntastic-perl6, a vim syntax checker

Vimlogo.svgI think that Perl 6, as a fairly new language, needs good tooling not only to attract new programmers but also to make the job of Perl 6 programmers more enjoyable. If you’ve worked with an IDE before, you certainly agree that syntax checking is one of those things that we take for granted. Syntastic-perl6 is a plugin that adds Perl 6 syntax checking in Vim using Syntastic. Syntastic is the leading Vim plugin for syntax checking. It supports many programming languages.

If the plugin proves to be useful, I plan on a parallel track for Perl 6 support in Vim. On one hand, this plugin will track th…

2016.08.20 21:16

Perl Jobs

Sr Perl Programmer, "Ahmedabad, ANY " (Mavenvista Technologies Pvt Ltd)

Designation: Sr Perl Programmer
Location: Any (Work from Home + If you are looking for a Project Based Options then also its available)

Job Description:

✔ Ability to maintain and manage enterprise level SAAS based web application.
✔ Lead and guide a team of 2 to 3 developers & plan tasks & ensure quality and timely execution of project
✔ Create & guide the team for design of new interfaces, algorithms, architecture of new feature and/or module in the product
✔ Designing and Maintaining MySQL Databases and Tables
✔ Understanding of old code and working to smartly build wrappers around the same…

Perl/Node.js Developer, Bloomington, IL; Dallas, TX; Atlanta, GA; Phoenix, AZ HYBRID (State Farm)

The DevOps team that supports the State Farm Telephone System is a fun, collaborative team functioning within a fast-paced environment leading high-impact work to provide automated, self-service solutions to end-users of our phone system that ultimately reduce administrative support costs across the organization. We are an innovative team functioning in an agile environment working to adopt a continuous delivery change model developing new solutions and modernizing existing applications. Self-driven and innovative individuals with good communication skills and a product mindset possessing expe…

Please remove this listing, United States (Please remove this listing)

Please remove this listing

Perl developer, Germany (Znuny)

We live open source and ticketing. Our claim is to deliver the best support for the ticketing system Znuny, a fork of the well-known OTRS Community Edition.

We develop and maintain extensions for Znuny, OTRS and the ((OTRS)) Community Edition. For this purpose, your future colleagues have also set up a good infrastructure and development environment, which they actively maintain. Besides a GitLab instance including unit, UI and integration tests for all possible scenarios, we also have a strongly developed chain of tools that take over annoying and recurring tasks in OTRS development. This all…

Someone left the awesome job machine on again… UK remote Perl job, Remote within UK (Perl Jobs by Perl Careers)

You’ve got a machine that builds the perfect job. You start with the basics: Perl programmer, check. Located in the UK, check. Next, add the action and excitement of a start-up with the stability of an established organization. Toss in some juicy perks like regular Hacker Days and the chance to work remotely as much as you want, and here comes your ideal career!

Our client is an international company whose servers host more than 80% of the UK’s job adverts. With over 5 million ads posted each month across 186 countries, they are the place to be for employers, job seekers, and recruiters. It’s…

Perl Developer, Pietermaritzburg, South Africa (Africa Media Online)

Africa Media Online has developed a digital asset management system. The asset management layer is developed in Perl using Catalyst as a framework. We have three part time Perl developers working on the system at the moment, but are wanting a dedicated developer who will be able to put the time in to push the system forward at the speed we need to develop to stay on the leading edge of our industry. The asset management layer interacts with ElasticSearch, a cataloguing layer developed in Ruby on Rails and with a presentation layer developed in PHP and also using IIIF functionality:

Server-side Engineer | ***Japanese proficiency is required, Shibuya, Tokyo, Japan (EDOCODE Inc)

EDOCODE Inc ( is a software development company based in Tokyo, Japan.

This position is responsible for the server-side of EDOCODE's main business, "Point Mall".

The main focus will be on the server-side, but people with front-end engineering experience are also welcome to apply, as long as they have sufficient software design and coding skills.

At EDOCODE, we want people of all genders and from all countries and regions to join us. We are looking forward to working with you to build a diverse team.


[ Atmosphere and Characteristics of EDOCODE ]

Web App Developer for Cybersecurity Product, Boca Raton, FL (outSOC)

Looking for someone to participate in developing a web-based security platform. Enhancements, bug fixes, new features.