Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

User Posts

( [id://1135479]=superdoc: print w/replies, xml ) Need Help??
Posts by jdporter
How to get programming help in Meditations
7 direct replies — Read more / Contribute
by jdporter
on May 23, 2022 at 11:21
    "Every time I have a programming question and I rly need help, I post it on PerlMonks and then log into another account and reply to it with an obscenely incorrect answer. Ppl don’t care about helping others but they LOVE correcting others. Works 100% of the time"
    -- @soychotic
User Profile Element: CPAN author ID in Perl Monks Discussion
8 direct replies — Read more / Contribute
by jdporter
on Apr 04, 2022 at 14:38

    We have just added a new field to the user profile: CPAN author ID. You can put your PAUSE author ID in this field. When someone views your profile, they will see it and it will be a link to the corresponding page on metacpan.

    Do you like this? It can be removed if it is unpopular.

    Update:

    I have turned off users' ability to set this value themselves.
    The field itself is still supported, and you can see it displayed on certain monks' homenodes.
    If you would like to have your CPAN ID on your homenode, please just /msg gods with your request. Thanks!

    Update 2:

    As a convenience, I have added the CPAN IDs to user profiles based on the info provided in this CPAN api (about 30 monks) and in this MetaCPAN api (about 185 monks). Interestingly, there was almost no intersection between those two sets of data.

    I reckon we are the only monastery ever to have a dungeon staffed with 16,000 zombies.
In Praise of Web 1.0 in Meditations
2 direct replies — Read more / Contribute
by jdporter
on Dec 15, 2021 at 13:39

    The Web Is F**ked, by Kev Quirk

    Web 1.0 wasn’t just about personal blogs, GeoCities and scrolling marquees. Oh no, dear reader. We had our own version of social media back in the day - the web forum.

    They were fantastic pieces of software that allowed communities to come together, discuss specific topics and generally hang out.

    If you read no other part of it, I encourage you to

    Familiarise yourself with POSSE and make your site the single source of truth for all your online content.
Perl/Raku community involvement survey in Perl News
4 direct replies — Read more / Contribute
by jdporter
on Jul 16, 2021 at 13:53

    Episodic Volunteering in Free/Libre/Open Source (FLOSS) Communities - a survey by kudra

    TPF announcement

    ... research to understand episodic, or occasional, participation in the Perl and Raku communities... The results of the research will be provided as a TPF report and will assist the community in improving practices for managing episodic participation to provide insights into what FLOSS projects could do to become more sustainable.
Markdown is now supported for comments, experimentally in Perl Monks Discussion
4 direct replies — Read more / Contribute
by jdporter
on Jun 09, 2021 at 15:15

    Due to "popular demand", PerlMonks now supports Markdown formatting for writeups. Note: Initially, Markdown is only supported for comments (aka notes). If everyone likes it, we will extend the capability to root-level posts as well (SOPW posts, etc.)

    Some relevant past discussions:

    Sorry it took me a minute to implement this feature. :-D

    To enable the use of Markdown in your comments, go to your User Settings and change the "Format writeups as:" selection from 'conventional' to 'markdown'.

    Be aware that this is a global setting. You can't select the format at the time you submit the writeup.

    When you are looking at a writeup entry box (textarea), you will see a short note immediately above it indicating which markup you can use.

    This change was actually relatively simple to implement, since modules for converting markdown to HTML already existed.
    I would like to know if there is any demand for any other Lightweight markup languages.
    For example, we could add support for Textile or some flavor of wiki text.

    I reckon we are the only monastery ever to have a dungeon staffed with 16,000 zombies.
TPF's Marketing Strategy for the Next Two Years in Perl News
1 direct reply — Read more / Contribute
by jdporter
on May 20, 2021 at 15:56

    This is actually from last August, but I haven't come across it until today.

    Marketing Strategy for the Next Two Years (perlfoundation.org)

    The question for us, I think is: What impact will this have on PerlMonks? Will we be required to modify/restrict our "look and feel" to conform to the branding guidelines set by TPF?

    I reckon we are the only monastery ever to have a dungeon staffed with 16,000 zombies.
The Categorized Questions and Answers section has been decommissioned in Perl Monks Discussion
1 direct reply — Read more / Contribute
by jdporter
on Apr 09, 2021 at 15:47

    Effective today, the section of PerlMonks known as "Categorized Questions and Answers" is no longer in service. The section page is a tombstone. It is no longer possible to post Categorized Questions or Answers. It is also not possible to search such posts via Super Search. It wouldn't be useful anyway, because all of the posts which were Categorized Questions have been converted into SOPW posts. Likewise, all posts which were Categorized Answers have been converted into replies to those SOPW posts. In each case, the name of the CatQA 'section' in which the Question was placed has been added to the SOPW post as a keyword.

    The intent of the CatQA section will, going forward, be fulfilled by a new system, whereby "good" questions (in SOPW) and their "best" answers will be given a special flag, as well as relevant keywords. (Update: This is fulfilled in Illuminations!)

    Some documentation and linkage changes remain to be made. If you see any, feel free to sent a msg to SiteDocClan, pmdev, or gods, depending.

    For more information on this change, see prior discussion: RFC: Better Best Answers Gets Real

    I reckon we are the only monastery ever to have a dungeon staffed with 16,000 zombies.
Banal Configuration Languages in Meditations
1 direct reply — Read more / Contribute
by jdporter
on Feb 26, 2021 at 14:10

    This is so great, I have to share it here. This guy nails it on the head. (Spring, we're looking at you.)

    I suspect a lot of abuse of config files comes from moving logic out of source code for bad reasons. There are good reasons for not hard-coding, say, ports and service endpoints in your source code, because it makes it easier to run the code in different environments. However, there are also bad reasons for taking things out of code. A couple that I have encountered:

    Pride in creating a "generic" system that can be configured to do all kinds of new things "without touching the code." Reality check: only one or two programmers understand how to modify the config file, and changes have to go through the same life cycle as a code change, so you haven't gained anything. You've only made it harder to onboard new programmers to the project.

    Hope that if certain logic is encoded in config files, then it can never get complicated. Reality check: product requirements do not magically become simpler because of your implementation decisions. The config file will become as expressive as necessary to fulfill the requirements, and the code to translate the config file into runtime behavior will become much more complex than if you had coded the logic directly.

    Hope that you can get non-programmers to code review your business logic. Reality check: the DSL you embedded in your config file isn't as "human readable" as you think it is. Also, they're not going to sign up for a Github account and learn how to review a PR so they can do your job for you.

    Marketing your product as a "no code" solution. Reality check: none for you; this is great! Your customers, on the other hand, are going to find out that "no code" means "coding in something that was never meant to be a programming language."
Detect whether a writeable filehandle has closed? in Seekers of Perl Wisdom
10 direct replies — Read more / Contribute
by jdporter
on Jan 13, 2021 at 12:26

    In my perl program I open a subprocess for writing via a pipe. It appears that this child process can decide to exit at times I don't expect. Is it possible to detect that the filehandle to the pipe is no longer usable? As it is, I now get SIGPIPE occasionally, but it seems to happen later, after I've possibly already written (tried to write) additional lines to the pipe. I want something synchronous.

    I've seen Scalar::Util's openhandle function. Does it work on pipe handles, opened for writing?

    TIA!

    I reckon we are the only monastery ever to have a dungeon stuffed with 16,000 zombies.
Export (extract) Mozilla Firefox Bookmarks in Cool Uses for Perl
1 direct reply — Read more / Contribute
by jdporter
on Mar 05, 2020 at 12:52

    Probably reinventing the wheel, but...

    (NB: You may need to cpan install DBD::SQLite first.)

    use DBD::SQLite; use strict; use warnings; =pod This program reads a file named places.sqlite which is found somewhere under your folder named Mozilla/Firefox/Profiles You pass the pathname of this file as a command-line argument. This program outputs html. =cut my $dbfile = shift; $dbfile or die "Usage: $0 <path>/places.sqlite \n"; -r $dbfile or die "Unreadable $dbfile\n"; $dbfile =~ /\bplaces\.sqlite$/ or die "File should be places.sqlite\n" +; my $dbh = DBI->connect("dbi:SQLite:dbname=$dbfile","","") or die "Erro +r opening db $dbfile\n"; my $bookmarks = $dbh->selectall_hashref("select * from moz_bookmarks", +'id'); my $places = $dbh->selectall_hashref("select * from moz_places",'id +'); # construct the tree: my $root; for my $b ( values %$bookmarks ) { if ( $b->{parent} ) { my $p = $bookmarks->{ $b->{parent} }; push @{ $p->{children} }, $b; } else # yep, there's exactly one. { $root = $b; } } # produce the html: local($,,$\)=("\t","\n"); sub walk; # because it recurses. sub walk { my $depth = shift; my $n = shift; my $indent = "\t" x $depth; if ( $n->{type} == 2 ) # folder { print $indent . ($depth?"<li>":'') . "<h4>$n->{title}</h4>"; if ( $n->{children} ) { print $indent . "<ol>"; for my $c ( sort { $a->{position} <=> $b->{position} } @{ +$n->{children} } ) { walk($depth+1,$c); } print $indent . "</ol>"; } $depth and print $indent . "</li>"; } else # leaf bookmark { my $link = $n->{title}; if ( $n->{fk} and $places->{$n->{fk}} and $places->{$n->{fk}}{ +url} ) { my $url = $places->{$n->{fk}}{url}; $link =~ /\S/ or $link = $url; $link = qq(<a href="$url">$link</a>); } else { $link =~ /\S/ or $link = "$n->{type}:$n->{id}"; } print $indent . "<li>$link</li>"; } } walk(0,$root);
Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others scrutinizing the Monastery: (8)
As of 2024-04-18 13:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found