Feeds

health @ Savannah: MyGNUHealth 2.2.1 released

GNU Planet! - Wed, 2024-07-17 06:10

Dear community

I am happy to announce patchset 2.2.1 for MYGNUHealth, the GNU Health Personal Health Record.

This patchset fixes the following issues:


You can download MyGNUHealth source code from the official GNU Savannah (https://ftp.gnu.org/gnu/health/mygnuhealth/). You can also install MyGH from the Python Package Index (PyPI) or from your operating system distribution.

Happy hacking
Luis

Categories: FLOSS Project Planets

Mike Gabriel: Weather Experts with Translation Skills Needed!

Planet Debian - Wed, 2024-07-17 06:05
Lomiri Weather App goes Open Meteo

In Ubuntu Touch / Lomiri, Maciej Sopyło has updated Lomiri's Weather App to operate against a different weather forecast provider (Open Meteo). Additionally, the new implementation is generic and pluggable, so other weather data providers can be added-in later.

Big thanks to Maciej for working on this just in time (the previous implementation's API has recently been EOL'ed and is not available anymore to Ubuntu Touch / Lomiri users).

Lomiri Weather App - new Meteorological Terms part of the App now

While the old weather data provider implementation obtained all the meteorological information as already localized strings from the provider, the new implementation requires all sorts of weather conditions being translated within the Lomiri Weather App itself.

The meteorological terms are probably not easy to translate for the usual software translator, so special help might be required here.

Call for Translations: Lomiri Weather App

So, if you feel entitled to help here, please join the Hosted Weblate service [1] and start working on Lomiri Weather App.

Thanks a lot!

light+love
Mike Gabriel (aka sunweaver)

[1] https://hosted.weblate.org/
[2] https://hosted.weblate.org/projects/lomiri/lomiri-weather-app/

Categories: FLOSS Project Planets

mark.ie: Keyboard Navigation for a LocalGov Drupal website

Planet Drupal - Wed, 2024-07-17 05:27

Wouldn't it be cool if we could get around our LocalGov Drupal websites by using keyboard shortcuts?

Categories: FLOSS Project Planets

Akademy 2024 Program Now Live

Planet KDE - Wed, 2024-07-17 04:41

The Akademy 2024 Program is now available.

This year's Akademy will take place in Würzburg, a beautiful city where you can enjoy interesting and fascinating talks, panels and keynotes. And for those who prefer to participate remotely, Akademy will also be available online.

Akademy officially kicks off with a welcome event on Friday 6 September, followed by a series of talks on Saturday 7 September and Sunday 8 September. From Monday 9 to Thursday 12 September, there will be BoFs (Birds of a Feather), workshops, meetings, daytrip and training sessions.

The talks will cover KDE's goals, how we're doing with implementing other languages to code for KDE (Rust anyone?), what's new in the latest wave of desktop and mobile applications, how KDE Eco is saving the environment, backends, frontends, KDE for work, life and fun.

For example, Nicolas Fella will tell us what a software maintainer does and why they are crucial to a project's survival, Aleix Pol Gonzalez will demystify embedded Linux, and Kevin Ottens will take us deep into the core of KDE Neon. You will also learn more about Plasma Mobile, funding your dream project and cool new KWin effects.

You can expect much, much more from a schedule packed with exciting talks and eye-opening presentations. Just take a look at the full program to discover everything that will be happening.

And that is not all! Stay tuned for the announcement of our two keynote speakers, coming soon here on Planet.

During the week KDE community members will attend BoFs and meet with colleagues with similar interests to work on their projects. They will also attend workshops, meetings, training sessions and daytrip until the event closes on 12 September.

Categories: FLOSS Project Planets

Python Bytes: #392 The votes have been counted

Planet Python - Wed, 2024-07-17 04:00
<strong>Topics covered in this episode:</strong><br> <ul> <li><a href="https://pyfound.blogspot.com/2024/07/announcing-2024-psf-board-election.html"><strong>2024 PSF Board Election &amp; Proposed Bylaw Change Results</strong></a></li> <li><strong><a href="https://satyrn.app">SATYRN: A modern Jupyter client for Mac</a></strong></li> <li><a href="https://blog.pypi.org/posts/2024-07-08-incident-report-leaked-admin-personal-access-token/"><strong>Incident Report: Leaked GitHub Personal Access Token</strong></a></li> <li><strong>Extra extra extra</strong></li> <li><strong>Extras</strong></li> <li><strong>Joke</strong></li> </ul><a href='https://www.youtube.com/watch?v=GpZI_HqzCTc' style='font-weight: bold;'data-umami-event="Livestream-Past" data-umami-event-episode="392">Watch on YouTube</a><br> <p><strong>About the show</strong></p> <p>Sponsored by <strong>Code Comments</strong>, an original podcast from RedHat: <a href="https://pythonbytes.fm/code-comments">pythonbytes.fm/code-comments</a></p> <p><strong>Connect with the hosts</strong></p> <ul> <li>Michael: <a href="https://fosstodon.org/@mkennedy"><strong>@mkennedy@fosstodon.org</strong></a></li> <li>Brian: <a href="https://fosstodon.org/@brianokken"><strong>@brianokken@fosstodon.org</strong></a></li> <li>Show: <a href="https://fosstodon.org/@pythonbytes"><strong>@pythonbytes@fosstodon.org</strong></a></li> </ul> <p>Join us on YouTube at <a href="https://pythonbytes.fm/stream/live"><strong>pythonbytes.fm/live</strong></a> to be part of the audience. Usually Tuesdays at 10am PT. Older video versions available there too.</p> <p>Finally, if you want an artisanal, hand-crafted digest of every week of the show notes in email form? Add your name and email to <a href="https://pythonbytes.fm/friends-of-the-show">our friends of the show list</a>, we'll never share it. </p> <p><strong>Brian #1:</strong> <a href="https://pyfound.blogspot.com/2024/07/announcing-2024-psf-board-election.html"><strong>2024 PSF Board Election &amp; Proposed Bylaw Change Results</strong></a></p> <ul> <li>New board members <ul> <li>Tania Allard</li> <li>KwonHan Bae</li> <li>Cristián Maureira-Fredes</li> </ul></li> <li>Congrats to new board members</li> <li>If you want to consider becoming a board member, there are 4 seats up for vote next year.</li> <li>All 3 bylaw changes passed, <a href="https://opavote.com/results/5004101476679680/1">by a wide margin</a>. <ul> <li><a href="https://pyfound.blogspot.com/2024/06/for-your-consideration-proposed-bylaws.html">Details of changes</a></li> <li>Change 1: Merging Contributing and Managing member classes</li> <li>Change 2: Simplifying the voter affirmation process by treating past voting activity as intent to continue voting</li> <li>Change 3: Allow for removal of Fellows by a Board vote in response to Code of Conduct violations, removing the need for a vote of the membership</li> </ul></li> </ul> <p><strong>Michael #2:</strong> <a href="https://satyrn.app">SATYRN: A modern Jupyter client for Mac</a></p> <ul> <li>A Jupyter client app for macOS</li> <li>Comes with a command palette</li> <li>LLM assistance (local or cloud?)</li> <li>Built in Black formatter</li> <li>Currently in alpha</li> <li>Business model unknown</li> </ul> <p><strong>Brian #3:</strong> <a href="https://blog.pypi.org/posts/2024-07-08-incident-report-leaked-admin-personal-access-token/"><strong>Incident Report: Leaked GitHub Personal Access Token</strong></a></p> <ul> <li>Suggested by Galen Swint</li> <li>See also JFrog blog: <a href="https://jfrog.com/blog/leaked-pypi-secret-token-revealed-in-binary-preventing-suppy-chain-attack/">Binary secret scanning helped us prevent</a><a href="https://jfrog.com/blog/leaked-pypi-secret-token-revealed-in-binary-preventing-suppy-chain-attack/"> </a><a href="https://jfrog.com/blog/leaked-pypi-secret-token-revealed-in-binary-preventing-suppy-chain-attack/">(what</a><a href="https://jfrog.com/blog/leaked-pypi-secret-token-revealed-in-binary-preventing-suppy-chain-attack/"> might have been) the worst supply chain attack you can imagine</a></li> <li>A GitHub access token found it’s way into a .pyc file, then into a docker image.</li> <li>JFrog found it through some regular scans.</li> <li>JFrog notified PYPI security.</li> <li>Token was destroyed within 17 minutes. (nice turnaround)</li> <li>Followup scan revealed that no harm was done.</li> <li>Takaways (from Ee Durbin): <ul> <li>Set aggressive expiration dates for API tokens (If you need them at all)</li> <li>Treat .pyc files as if they were source code</li> <li>Perform builds on automated systems from clean source only.</li> </ul></li> </ul> <p><strong>Michael #4:</strong> <strong>Extra extra extra</strong></p> <ul> <li><a href="https://blog.python.org/2024/06/python-3130-beta-3-released.html">Python 3.13.0 beta 3 released</a></li> <li><a href="https://github.com/jordanbaird/Ice/releases">Ice got a lot better</a></li> <li><a href="https://www.youtube.com/watch?v=k0XuoK132z4">I Will Piledrive You If You Say AI Again | Prime Reacts Video</a></li> <li><a href="https://fosstodon.org/@mkennedy/112797279807472603">Follow up actions for polyfill supply chain attack</a></li> <li><a href="https://surveys.jetbrains.com/s3/p-developer-ecosystem-survey-2024?utm_source=pythonbytes">Developer Ecosystem Survey 2024</a></li> <li><a href="https://talkpython.fm/castle">Code in a Castle still has seats open</a></li> </ul> <p><strong>Extras</strong> </p> <p>Brian: </p> <ul> <li>A new pytest course in the works <ul> <li>Quick course focusing on <ul> <li>core pytest features + some strategy and Design for Testability concepts</li> </ul></li> <li>Idea <ul> <li>everyone on the team (including managers) can take the new course.</li> <li>1-2 people on a team take “The Complete pytest Course” to become the teams local pytest experts.</li> </ul></li> </ul></li> <li>Python People is on an indefinite hold </li> <li>Python Test → back to Test &amp; Code (probably) <ul> <li>I’m planning a series (maybe a season) on TDD which will be language agnostic.</li> <li>Plus I still have tons of Test &amp; Code stickers and no Python Test stickers.</li> <li>New episodes planned for August</li> </ul></li> </ul> <p><strong>Joke:</strong> <a href="https://devhumor.com/media/i-need-my-intellisense">I need my intellisense</a><a href="https://devhumor.com/media/i-need-my-intellisense"> </a><a href="https://devhumor.com/media/i-need-my-intellisense">(autocomplete)</a></p>
Categories: FLOSS Project Planets

Russell Coker: Samsung Galaxy Note 9 Review

Planet Debian - Wed, 2024-07-17 03:02

After the VoLTE saga [1] and the problems with battery life on the PinePhonePro [2] (which lasted 4 hours while idle with the screen off in my last test a few weeks ago) I’m running a Galaxy Note 9 [3] with the default Samsung OS as my daily driver.

I don’t think that many people will be rushing out to buy a 2018 phone regardless of my review. For someone who wants a phone of such age (which has decent hardware and a low price) then good options are the Pixel phones which are all supported by LineageOS.

I recommend not buying this phone due to the fact that it doesn’t have support for VoLTE with LineageOS (and presumably any other non-Samsung Android build) and doesn’t have support from any other OS. The One Plus 6/6T has Mobian support [4] as well as LineageOS support and is worth considering.

The Note 9 still has capable hardware by today’s standards. A 6.4″ display is about as big as most people want in their pocket and 2960×1440 resolution in that size (516dpi) is probably as high as most people can see without a magnifying glass. The model I’m using has 8G of RAM which is as much as the laptop I was using at the start of this year. I don’t think that many people will have things that they actually want to do on a phone which needs more hardware than this. The only hardware feature in new phones which beats this is the large folding screen in some recent phones, but $2500+ (the price of such phones in Australia) is too much IMHO and the second hand market for folding phones is poor due to the apparently high incidence of screens breaking.

The Note 9 has the “Dex” environment for running as a laptop if you connect it to a USB-C dock. It can run nicely with a 4K monitor with USB keyboard and mouse. The UI is very similar to that of older versions of Windows.

The Samsung version of Android seems mostly less useful than the stock Google version or the LineageOS version. The Samsung keyboard flags words such as “gay” as spelling errors and it can’t be uninstalled even when you install a better keyboard app. There is a “Bixby” button on the side of the phone to launch the Bixby voice recognition app which can’t be mapped to any useful purpose, The Google keyboard has a voice dictation option which I will try out some time but that’s all I desire in terms of voice recognition. There are alerts about Samsung special deals and configuration options including something about signing in to some service and having it donate money to charity, I doubt that any users want such features. Apart from Dex the Samsung Android build is a good advert for LineageOS.

The screen has curved sides for no good reason. This makes it more difficult to make a protective phone case as a case can’t extend beyond the screen at the sides and therefore if it’s dropped and hits an edge (step, table, etc) then the glass can make direct contact with something. Also the curved sides reflect sunlight in all directions, this means that the user has to go to more effort to avoid reflecting the sun into their eyes and that a passenger can more easily reflect sunlight into the eyes of a car driver. It’s an impressive engineering feat to make a curved touch-screen but it doesn’t do any good for users.

The stylus is good as always and the screen is AMOLED so it doesn’t waste much power when in dark mode. There is a configuration option to display a clock all the time when the screen is locked because that apparently doesn’t use much power. I haven’t felt inclined to enable the always on screen but it’s a nice feature for those who like such things.

The VoLTE implementation is apparently a bit unusual so it’s not supported by LineageOS and didn’t work on Droidian for the small amount of time that Droidian supported it.

Generally this phone is quite nice hardware it’s just a pity that it demonstrates all of the downsides to buying a non-Pixel phone.

Related posts:

  1. Samsung Galaxy Note 2 A few weeks ago I bought a new Samsung Galaxy...
  2. Samsung Galaxy Note 3 In June last year I bought a Samsung Galaxy Note...
  3. Samsung Galaxy Note 10.1 2014 In May 2014 I bought a Samsung Galaxy Note 10.1...
Categories: FLOSS Project Planets

Gunnar Wolf: Scholarly spam • «Wulfenia»

Planet Debian - Tue, 2024-07-16 20:23

I just got one of those utterly funny spam messages… And yes, I recognize everybody likes building a name for themselves. But some spammers are downright silly.

I just got the following mail:

From: Hermine Wolf <hwolf850@gmail.com> To: me, obviously 😉 Date: Mon, 15 Jul 2024 22:18:58 -0700 Subject: Make sure that your manuscript gets indexed and showcased in the prestigious Scopus database soon. Message-ID: <CAEZZb3XCXSc_YOeR7KtnoSK4i3OhD=FH7u+A5xSMsYvhQZojQA@mail.gmail.com> This message has visual elements included. If they don't display, please update your email preferences. *Dear Esteemed Author,* Upon careful examination of your recent research articles available online, we are excited to invite you to submit your latest work to our esteemed journal, '*WULFENIA*'. Renowned for upholding high standards of excellence in peer-reviewed academic research spanning various fields, our journal is committed to promoting innovative ideas and driving advancements in theoretical and applied sciences, engineering, natural sciences, and social sciences. 'WULFENIA' takes pride in its impressive 5-year impact factor of *1.000* and is highly respected in prestigious databases including the Science Citation Index Expanded (ISI Thomson Reuters), Index Copernicus, Elsevier BIOBASE, and BIOSIS Previews. *Wulfenia submission page:* [image: research--check.png][image: scrutiny-table-chat.png][image: exchange-check.png][image: interaction.png] . Please don't reply to this email We sincerely value your consideration of 'WULFENIA' as a platform to present your scholarly work. We eagerly anticipate receiving your valuable contributions. *Best regards,* Professor Dr. Vienna S. Franz

Who cares what Wulfenia is about? It’s about you, my stupid Wolf cousin!

Categories: FLOSS Project Planets

Drupal Starshot blog: Join the Drupal Starshot team as a track lead

Planet Drupal - Tue, 2024-07-16 18:27

Drupal Starshot seeks track leads to drive key project components. Apply by July 31st and help bring Drupal Starshot to life!

The Drupal Starshot initiative has been making significant progress behind the scenes, and I'm excited to share some updates with the community.

Leadership team formation and product definition

Over the past few months, we've been working diligently on Drupal Starshot. One of our first steps was to appoint a leadership team to guide the project. With the leadership team in place as well as the new Starshot Advisory Council, we shifted our focus to defining the product. We've made substantial progress on this front and will be sharing more details about the product strategy in the coming weeks.

Introducing Drupal Starshot tracks

We already started to break down the initiative into manageable components, and are introducing the concept of "tracks". Tracks are smaller, focused parts of the Drupal Starshot project that allow for targeted development and contributions. We've already published the first set of tracks on the Drupal Starshot issue queue on Drupal.org.

Example tracks include:

  1. Creating Drupal Recipes for features like contact forms, advanced search, events, SEO and more.
  2. Enhancing the Drupal installer to enable Recipes during installation.
  3. Updating Drupal.org for Starshot, including product marketing and a trial experience.

While many tracks are technical and need help from developers, most of the tracks need contribution from designers, UX experts, marketers, testers and site builders.

Recruiting more track leads

Several tracks already have track leads and have made significant progress:

However, we need many additional track leads to drive our remaining tracks to completion.

We're now accepting applications for track lead positions. Interested individuals and organizations can apply by completing our application form. The application window closes on July 31st, two weeks from today.

Key responsibilities of a track lead

Track leads can be individuals, teams, or organizations, including Drupal Certified Partners. While technical expertise is beneficial, the role primarily focuses on strategic coordination and project management. Key responsibilities include:

  • Defining and validating requirements to ensure the track meets the expectations of our target audience.
  • Developing and maintaining a prioritized task list, including creating milestones and timelines.
  • Overseeing and driving the track's implementation.
  • Collaborating with key stakeholders, including the Drupal Starshot leadership team, module maintainers, the marketing team, etc.
  • Communicating progress to the community (e.g. blogging).
Track lead selection and announcement

After the application deadline, the Drupal Starshot Leadership Team will review the applications and appoint track leads. We expect to announce the selected track leads in the first week of August.

While the application period is open, we will be available to answer any questions you may have. Feel free to reach out to us through the Drupal.org issue queue, or join us in an upcoming zoom meeting (details to be announced / figured out).

Looking ahead to DrupalCon Barcelona

Our goal is to make significant progress on these tracks by DrupalCon Barcelona, where we plan to showcase the advancements we've made. We're excited about the momentum building around Drupal Starshot and can't wait to see the contributions from the community.

If you're passionate about Drupal and want to play a key role in shaping its future, consider applying for a track lead position.

Stay tuned for more updates on Drupal Starshot, and thank you for your continued support of the Drupal community.

— Dries Buytaert

Categories: FLOSS Project Planets

Nonprofit Drupal posts: July Drupal for Nonprofits Chat

Planet Drupal - Tue, 2024-07-16 15:50

Join us THURSDAY, July 18 at 1pm ET / 10am PT, for our regularly scheduled call to chat about all things Drupal and nonprofits. (Convert to your local time zone.) We'll be taking August off, so this is the last chat of the summer.

We don't have anything specific on the agenda this month, so we'll have plenty of time to discuss anything that's on our minds at the intersection of Drupal and nonprofits.  Got something specific you want to talk about? Feel free to share ahead of time in our collaborative Google doc: https://nten.org/drupal/notes!

All nonprofit Drupal devs and users, regardless of experience level, are always welcome on this call.

This free call is sponsored by NTEN.org and open to everyone. 

  • Join the call: https://us02web.zoom.us/j/81817469653

    • Meeting ID: 818 1746 9653
      Passcode: 551681

    • One tap mobile:
      +16699006833,,81817469653# US (San Jose)
      +13462487799,,81817469653# US (Houston)

    • Dial by your location:
      +1 669 900 6833 US (San Jose)
      +1 346 248 7799 US (Houston)
      +1 253 215 8782 US (Tacoma)
      +1 929 205 6099 US (New York)
      +1 301 715 8592 US (Washington DC)
      +1 312 626 6799 US (Chicago)

    • Find your local number: https://us02web.zoom.us/u/kpV1o65N

  • Follow along on Google Docs: https://nten.org/drupal/notes

View notes of previous months' calls.

Categories: FLOSS Project Planets

PyCoder’s Weekly: Issue #638 (July 16, 2024)

Planet Python - Tue, 2024-07-16 15:30

#638 – JULY 16, 2024
View in Browser »

Customize VS Code Settings

In this course, Philipp helps you customize your Visual Studio Code settings to switch from a basic cluttered look to a clean presentable look. This is not just pleasant on the eyes, but also gives you a nice user interface if you want to share on a Zoom call or screen recording.
REAL PYTHON course

Incident Report: Leaked GitHub Personal Access Token

A PyPI admin accidentally leaked credentials into a Docker container. It has since been fixed and the credentials revoked. This is the report by that same admin outlining what happened and how to help prevent similar mistakes in the future.
EE DURBIN

GPU Accelerate Your Data Science Workflows End-to-End

Discover how to create, accelerate, and deploy data pipelines with RAPIDS for GPU-accelerated data science workflows. Take one of our Data Science courses for free when you join the NVIDIA Developer Program →
NVIDIA sponsor

Free-Threaded CPython Is Ready to Experiment With!

An overview of the ongoing efforts to improve and roll out support for free-threaded CPython throughout the Python open source ecosystem. Associated Hacker News discussion.
RALF GOMMERS

PSF Announces Infrastructure Engineer

PYTHON SOFTWARE FOUNDATION

DjangoCon US 2024 Announces Talks

DJANGOCON

Django Security Releases Issued: 5.0.7 and 4.2.14

DJANGO SOFTWARE FOUNDATION

Register for Kiwi PyCon, Aug 23-25

KIWIPYCON.NZ • Shared by Kiwi PyCon

Quiz: Split Datasets With scikit-learn.train_test_split()

REAL PYTHON

Python Jobs Python Tutorial Writer (Anywhere)

Real Python

Python Video Course Instructor (Anywhere)

Real Python

More Python Jobs >>>

Articles & Tutorials Free, Unbelievably Stupid Wi-Fi on Long-Haul Flights

Deep in a need to procrastinate on a flight between London and San Francisco, Robert discovered that changing his name on an airline’s frequent flyer account was free over the plane’s WiFi. What’s a developer to do? Work on their tickets? No, create an entire TCP/IP protocol using this loophole. The result is the PySkyWiFi package.
ROBERT HEATON

Digging Into Graph Theory in Python With David Amos

Have you wondered about graph theory and how to start exploring it in Python? What resources and Python libraries can you use to experiment and learn more? This week on the show, former co-host David Amos returns to talk about what he’s been up to and share his knowledge about graph theory in Python.
REAL PYTHON

My Programming Beliefs as of July 2024

This collection of thoughts outlines how Evan approaches coding, with the understanding that this might change in the future. His beliefs include using spikes, the difference between simple and easy, a preference for enums over booleans, and more.
EVAN HAHN

Breaking Out of Nested Loops With Generators

Have you ever had the situation where you’ve got a nested loop and need to break out of the outer one? One way of dealing with this problem is refactoring the loop to use a generator. This post shows you how.
RODRIGO GIRÃO SERRÃO

“Extracting Wisdom” From Conference Videos

There are so many conferences and so many videos, you can’t possibly watch them all. This post shows you how to extract information to summarize a talk so you can quickly decide what you want to watch.
GONÇALO VALÉRIO

Creating a Simple Pastebin Service in Python and Flask

Learn how to build a functional pastebin service using Python and Flask. This tutorial covers web development basics, file handling, and syntax highlighting.
MUHAMMAD RAZA

How a Decorator Crashed My Flask App

This blog post shows how failing to use functools.wraps can cause issues with FlaskAPI. Learn why you should always use wraps and what went wrong.
SUYOG DAHAL

Python Has Too Many Package Managers

Overview of Python’s Package management ecosystem in 2024 and associated Hacker News Discussion
LARRY DU

Creating Images in Your Terminal With Python and Rich Pixels

Rich Pixels, a package from one of the folks at Textual, allows you to create images in your terminal and display them.
MIKE DRISCOLL

How Do You Choose Python Function Names?

This tutorial discusses the rules and conventions for choosing Python function names and why they’re important.
REAL PYTHON

Using HTMX With FastAPI

This tutorial looks at how use HTMX with FastAPI by creating a simple todo web app and deploying it on Render.
PAUL ESCH-LAURENT • Shared by Michael Herman

Projects & Code ViperIDE: MicroPython IDE for Web and Mobile

GITHUB.COM/VSHYMANSKYY

ML System Design: 450 Case Studies to Learn From

EVIDENTLYAI.COM • Shared by Daria Maliugina

reladiff: High-Perf Diffing of Large Datasets Across Databases

GITHUB.COM/EREZSH

Yen: The Last Python Environment Manager You’ll Ever Need

GITHUB.COM/TUSHARSADHWANI • Shared by Tushar Sadhwani

Events Weekly Real Python Office Hours Q&A (Virtual)

July 17, 2024
REALPYTHON.COM

PyData Bristol Meetup

July 18, 2024
MEETUP.COM

PyLadies Dublin

July 18, 2024
PYLADIES.COM

Chattanooga Python User Group

July 19 to July 20, 2024
MEETUP.COM

PyKla Monthly Meetup

July 24, 2024
MEETUP.COM

PyLadies Amsterdam

July 24, 2024
MEETUP.COM

PyOhio 2024

July 27 to July 28, 2024
PYOHIO.ORG

Happy Pythoning!
This was PyCoder’s Weekly Issue #638.
View in Browser »

[ Subscribe to 🐍 PyCoder’s Weekly 💌 – Get the best Python news, articles, and tutorials delivered to your inbox once a week >> Click here to learn more ]

Categories: FLOSS Project Planets

GNU Taler news: Video interview with Özgur Kesim on age-restricted digital cash

GNU Planet! - Tue, 2024-07-16 14:30
On the occasion of the Point Zero Forum's Innovation Tour, Evgeny Grin has interviewed Özgur Kesim who designed and implemented an age restricition mechanism inside the GNU Taler coins.
Categories: FLOSS Project Planets

GNU Taler news: Video interview with Isidor Walliman, creator of the Netzbon regional currency in Basel

GNU Planet! - Tue, 2024-07-16 14:30
On the occasion of the Point Zero Forum's Innovation Tour, Evgeny Grin has interviewed Isidor Wallimann who is introducing GNU Taler for the local currency Netzbon in Basel.
Categories: FLOSS Project Planets

Dave Hibberd: What I've been up to in Open Ham Radio - July 2024

Planet Debian - Tue, 2024-07-16 14:10
I do a lot in free software for ham radio, and Steve at Zero Retries encouraged me to take this email I sent him and translate it into something here. UK Packet Radio Network UKPRN is going nicely, with the Nottingham and South segment really quite impressively interconnected over RF - https://nodes.ukpacketradio.network/packet-network-map.html?rfonly=1 I’m excited to see the growth down there! We’re sorting out forwarding and routes in Aberdeen too, and working to grow the RF path to Inverness.
Categories: FLOSS Project Planets

Drupal.org blog: Drupal.org login flow is changing

Planet Drupal - Tue, 2024-07-16 10:58

The Drupal Association engineering team is preparing to switch over to our new single sign-on solution for user login. This is an important step in our work to upgrade Drupal.org, and in the future will give you the ability to use your Drupal.org identity in new ways.

The Drupal Association engineering team is preparing to switch over to our new single sign-on solution for user login. This is an important step in our work to upgrade Drupal.org, and in the future will give you the ability to use your Drupal.org identity in new ways.

The switch-over is scheduled for:

  • Thursday 25 July - from 9am to 11am Pacific (4pm-6pm UTC).

During this window you will be unable to login to Drupal.org or edit your profile, and may not be able to access related services which use your Drupal identity, such as git.drupalcode.org.

When we make this change, the login experience will look different. 

If you are an existing user

When you click to login or create an account you will be redirected to: accounts.drupal.org 

You will log in with your existing Drupal.org username or email and your current password, and your two factor authentication code if you have TFA enabled.

Once you log in, you will have to change your password.

If you have Two Factor Authentication enabled, you will also have to set up a new seed.

After that, you'll be taken back to Drupal.org as normal. You should be directed back to the path you came from.

If you are creating a new account

When you click 'create account' on Drupal.org you will be taken to the new account creation page: 

After you complete the basic information,  you will be taken to the Drupal.org welcome page to fill out the rest of your user profile.

If you need to change your account information

The majority of your account information will continue to live in your Drupal.org profile, however, some basic account information will now be stored and updated in the Drupal.org SSO system.

When you click to edit your first and last name, username, password, email address, or enable two factor authentication you'll be taken to the account page:

Setting up Two Factor Authentication

This account settings page is also where you can change your Two Factor Authentication settings. You can use the 'Account Security' tab in the sidebar to navigate to the Two Factor setup process:

If you need to reset your password

If you have forgotten your password, you can reset your password from the login page:

You will receive a password reset email from noreply@drupal.org allowing you to change your password.

If you encounter any issues with your account, please contact us at help@drupal.org

We want to thank two of our partners for supporting this project.

Cloud-IAM is our SSO partner. Cloud-IAM is a privacy centric provider of hosted solutions for Keycloak, an open source identity management service. They are enthusiastic supporters of the Drupal community, and would like to offer any site owners and agencies who are looking for their own identity and access management service 10% off, with promo code: DRUPAL10.

Our implementation partner on this project was Tag1Consulting. Tag1Consulting is a global team of Drupal experts working with clients from non-profits to the Fortune 500, and is one of the top contributors to Drupal. They have been the Drupal Association's infrastructure partner for many years. 

Categories: FLOSS Project Planets

tasklist @ Savannah: Cleaning out old jobs

GNU Planet! - Tue, 2024-07-16 10:35

When I opened this Savannah project I imported items from the old GNU tasklist document. 20 years later all of the context has been lost (if there ever was any) so now if anyone asks about these tasks it just leads to frustration on everyone's part.

I therefore deleted the original help wanted entries that date back to 2003. If anyone wants to help the GNU project, the best way to do that is to pick one of the FSF's High-Priority projects:

https://www.fsf.org/campaigns/priority-projects

Categories: FLOSS Project Planets

LabPlot 2.11 released

Planet KDE - Tue, 2024-07-16 10:30

Say hello to LabPlot 2.11!

This brand new release comes with many new features, improvements and performance enhancements in several areas, as well as support for more data formats and visualisation types.

The main new features are outlined below. For a more detailed overview of the changes in this release, please refer to the ChangeLog file.

The source code of LabPlot, the Flatpak and Snap packages for Linux, as well as the installer for Windows and the image for MacOS are available from our download page.

What’s new in 2.11? Worksheet

This release includes more visualisations, usability improvements and a new worksheet preview panel:

  • You can now use Lollipop, Q-Q and KDE plots
  • We have implemented error bars for bar plots
  • There is a new preview panel for all available worksheets in the project
  • You can use the navigation panel in the presenter widget to select, zoom and navigate in the presenter mode
  • You can lock worksheet elements to prevent accidental changes
  • LabPlot 2.11 allows you to show or hide the entry in the legend for all supported plot types and not just xy-curve
  • You can give your worksheets a fresh new look with the Dracula theme
Spreadsheet

Spreadsheets gain more functions and operations to modify, generate and understand the data:

  • We have extended the search and replace features
  • You can check statistical properties of the parent in a new child spreadsheet
  • We have added sparklines in the header of a spreadsheet
  • LabPlot 2.11 comes with spreadsheet linking to synchronize the number of rows across multiple spreadsheets
  • We have implemented triangular distributions for PDF, CDF, and pseudorandom number generation
  • Equidistant value generation has been extended
Analysis

Analysis tools added to LabPlot 2.11 include:

  • Note showing the fit results
  • Faster computation of the baseline removal (we switched to Eigen3 internally)
Import/Export

LabPlot 2.11 adds support for new file formats and multiple optimizations to improve the handling of edge-case scenarios:

  • You can now import Open Document Spreadsheet (ODS) files.
  • Templates for ASCII and Binary import filters allow you to save and load current filter settings
  • There is a new feature that allows you to to specify the data range to be read (start/end values for columns and records) when importing from SQL databases
  • LabpPlot can now gracefully handle out-of-memory situations when importing large amounts of data
  • LabPlot 2.11 displays better error messages during the import
  • We provide additional information about BLF files (application name with which the file was created with, etc.)
  • We have made several fixes and improvements to the import of Origin’s OPJ files
Notebook

The 2.11 release adds a number of usability enhancements to the Notebook interface:

  • You can now export the notebook to PDF
  • We provide statistics and a “plot data” action from the context menu in the project explorer for variables created in the Notebook
  • There is a new option in the application settings to run a selected CAS engine on startup
Categories: FLOSS Project Planets

Real Python: Exercises Course: Introduction to Web Scraping With Python

Planet Python - Tue, 2024-07-16 10:00

Web scraping is the process of collecting and parsing raw data from the Web, and the Python community has come up with some pretty powerful web scraping tools.

The Internet hosts the greatest source of information on the planet. Many disciplines, such as data science, business intelligence, and investigative reporting, can benefit enormously from collecting and analyzing data from websites.

In this course, you’ll practice:

  • Parsing website data using string methods and regular expressions
  • Parsing website data using an HTML parser
  • Interacting with forms and other website components

[ Improve Your Python With 🐍 Python Tricks 💌 – Get a short & sweet Python Trick delivered to your inbox every couple of days. >> Click here to learn more and see examples ]

Categories: FLOSS Project Planets

Specbee: Personalizing Experiences in Drupal: CRMs, E-commerce Integration, and UTMs

Planet Drupal - Tue, 2024-07-16 08:50
I love shopping on Amazon. It's not just about the convenience and fast delivery; it's also how it tailors my experience. From my shopping history to my preferences and even where I'm from, Amazon makes it easy to find exactly what I want. It has been proven that personalized web experiences can significantly boost revenue for any organization. A McKinsey study* found that 71% of consumers expect personalization, and 76% get frustrated when it’s missing. Personalizing website content requires user data. This data gathered with explicit permission, often comes from third-party tools like Marketo, Salesforce, or Shopify. Drupal makes working with integrations like these a breeze. In this article, you’ll learn about creating personalized web experiences in Drupal using consensually collected user data from third-party tools. If your goal is to provide a unified, personalized web experience that meets your users’ needs and drives revenue growth, you need to read this article. We'll even walk you through it with an example. Why prioritize personalized, unified user experiences The primary objective of delivering personalized and unified website experiences is to create a cohesive experience that aligns with users’ digital profiles. By focusing on personalization, businesses can enhance user satisfaction and build stronger customer loyalty. Unified experiences ensure consistency across all touchpoints, creating a cohesive brand image and simplifying the user journey. Tailored User Experience: Customize content and recommendations based on user profiles stored in CRMs like Marketo and Salesforce. Revenue Growth: Increase opportunities for cross-selling and upselling through a seamless shopping cart experience. Cross-Promotion: Recommend best-matched products, services, and content throughout the website using AI-based algorithms. Personalization methods There are multiple ways to personalize a webpage, ensuring a highly customized user experience: Persona-Based Personalization: Content is tailored based on the defined personas. UTM Tags: UTM tags in URLs can track the effectiveness of online marketing campaigns and personalize content accordingly. Combination of Both: For even more refined personalization, combine persona-based personalization with UTM tags, allowing for a highly targeted approach. Scope and Technologies : A Sample Drupal Project To make things simpler, let’s explain implementing personalization on a sample Drupal website project. Let’s say the project has a corporate website and an ecommerce store and focuses on integrating the following technologies: Drupal: Used for the corporate website, with necessary modules for integration. Marketo: Marketing CRM housing most digital profiles. Salesforce: Sales CRM containing additional profile information. Shopify: E-commerce platform for transactions. UTM Tags : A set of parameters that can be added to a URL to track the performance of online marketing campaigns Let’s assume that the business requirement is to use Drupal to deliver a personalized shopping cart experience for targeted personas. Which means, when the user logs in with their credentials, the user’s details are fetched from CRMs like Marketo and Salesforce. This information is then used to segment users and display best matched products and content throughout the website. Integrating Shopify, Marketo, and Smart Content with Drupal Shopify Integration Shopify is a leading e-commerce platform that allows businesses to create online stores with ease. In our sample Drupal project, the user journey begins on the Corporate Website, where they discover the product. When they click the "Purchase" or "Add to Cart" button, they are seamlessly redirected to the Shopify product page to complete their transaction. This integration ensures a smooth transition, combining the robust content management of Drupal with the powerful e-commerce capabilities of Shopify. Enabling the Shopify module allows synchronization of products and collections with your Drupal site. Configuration involves setting up API keys and syncing products to provide a unified shopping experience. You can enable the cron run to sync products and collections. Once the sync is done, you can visit your store by clicking on Shopify in your toolbar. You can then perform various activities like viewing all your products, collections (stored as taxonomy terms), tags, change the product display order, and more. Once everything is set up, you have two ways to personalize your content based on user roles or other details. You can display recommended products by: Calling only the required items through the Shopify API directly from your Shopify store. Syncing the products to your Drupal site and adding the necessary tags, allowing you to pull information based on these tags. This approach gives you greater control over your personalization activities. Marketo Integration Marketo enables marketers to create personalized campaigns, manage leads, and measure performance across various channels. Integrating the Marketo MA module with your Drupal website helps you deliver personalized, targeted marketing campaigns and track user interactions on your Drupal site. In our sample Drupal project, the Marketo MA module retrieves user details from Marketo and delivers personalized content based on it. User details such as region, member type, member title, company, job function, and job level are retrieved from Marketo using the user's email ID upon login. The site's content is then dynamically tailored based on these values, ensuring a personalized user experience. You can, for example, display a different banner for a marketing professional and a different one for a developer on their home page. To configure the Marketo MA module, navigate to the module configuration page in your Drupal admin panel. Next, enter your Marketo credentials, including the Client ID, Client Secret, and Munchkin Account ID. These can be obtained from your Marketo account under the Admin section. The Smart Content Drupal module The Smart Content module personalizes site content by setting conditions and displaying blocks based on user segments. For example, you can display different promotional banners to users based on whether they are new visitors, returning customers, or located in a specific region. To implement this module, you will first need to download the module and configure it. Next, you can create different segments based on user personas or if they’re new, returning or regional visitors. It's now time to create personalized content blocks for these segments. For example, for returning customers, you can create a content block with a loyalty reward banner that reads: “Welcome back! Enjoy a special discount just for you.” Next, you can setup conditions for the display of each of these blocks. For example, for the returning customers block, set the condition to display if the user has a specific purchase history. Lastly, you can now embed these personalized blocks to your block layout or your custom template where you want it to appear. For a deeper understanding of using the Smart Content module, check out this detailed article. UTM Tags UTM tags (Urchin Tracking Module tags) are small snippets of text added to the end of a URL to help track the performance of online marketing campaigns across various traffic sources. Not just that, they’re a great way to personalize your content based on the UTM tags content which can let marketers know where their website traffic is coming from and how users interact with their content. The Smart content UTM tags module is an add-on Smart content module that leverages UTM parameters to deliver personalized content to users. This module integrates seamlessly with the Smart Content module, allowing for dynamic content personalization. A typical URL with UTM tags might look like this: https://www.specbee.com/?utm_source=google&utm_medium=cpc&utm_campaign=… Now, based on the UTM tags, you can create your segments in the Smart content module. Steps to Creating a Personalized Experience Step 1: Defining User Personas The first step in creating a personalized experience is defining user personas. These personas can be based on various roles such as marketing, sales, and engineering. Each persona represents a segment of your audience with distinct characteristics, preferences, and needs. By clearly defining these personas, you can create targeted content that resonates with each group. Step 2: Uploading Content to Components Once personas are defined, the next step is to create and upload relevant content to your website components. These components can include text, images, videos, and other multimedia elements. Each piece of content should address the specific needs and interests of a particular persona. Step 3: Placing Components Based on Persona With the content uploaded, you can place these components on your website pages based on the defined personas. This involves organizing the content to align with the user journey and ensure that each persona sees the most relevant information. Step 4: Mapping Persona to User via Marketo When a user logs into your website, their job title or role is identified through Marketo, a leading marketing automation platform. Marketo maps the user to the appropriate persona based on their job title or other relevant information. Step 5: Displaying Personalized Content Once the user’s persona is mapped, the corresponding components and content are dynamically displayed on the page. This means that each user sees a personalized version of the Drupal website tailored to their specific persona, enhancing their overall experience and engagement with your site. References https://www.mckinsey.com/capabilities/growth-marketing-and-sales/our-insights/the-value-of-getting-personalization-right-or-wrong-is-multiplying Final Thoughts Drupal’s flexibility makes it perfect for delivering personalized user experiences. By integrating your Drupal site with CRM tools and using smart content along with user personas, you can ensure your visitors get content tailored to their needs and interests. We've done something similar for our customer SEMI with our Drupal development services, so if you have a similar need, reach out to us today!
Categories: FLOSS Project Planets

Pages