<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: SeriousFun01</title>
    <description>The latest articles on DEV Community by SeriousFun01 (@seriousfun01).</description>
    <link>https://dev.to/seriousfun01</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F571353%2Fae24eec4-fe57-4ae8-a07c-a8d9ab184659.png</url>
      <title>DEV Community: SeriousFun01</title>
      <link>https://dev.to/seriousfun01</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/seriousfun01"/>
    <language>en</language>
    <item>
      <title>Datascience, International Women's Day and Florence Nightingale</title>
      <dc:creator>SeriousFun01</dc:creator>
      <pubDate>Mon, 08 Mar 2021 17:51:04 +0000</pubDate>
      <link>https://dev.to/seriousfun01/datascience-international-women-s-day-and-florence-nightingale-1mmc</link>
      <guid>https://dev.to/seriousfun01/datascience-international-women-s-day-and-florence-nightingale-1mmc</guid>
      <description>&lt;p&gt;Today is &lt;a href="https://en.wikipedia.org/wiki/International_Women's_Day"&gt;international women's day&lt;/a&gt;. What has this got to do with developers, code, algorithms and datascience?&lt;/p&gt;

&lt;p&gt;Quite a lot actually. &lt;/p&gt;

&lt;p&gt;What we chose to do as developers, data scientists and general &lt;em&gt;digital transformation&lt;/em&gt; magicians plays a huge role in the kind of society that we are building for ourselves and those who will follow.&lt;/p&gt;

&lt;p&gt;Technical talent can be deployed in any which way. Some are good and improve our lot and some are not. It is our responsibility to ask which of the two.&lt;/p&gt;

&lt;p&gt;What about that Florence Nightingale?&lt;/p&gt;

&lt;p&gt;Well, she is seen as "a true pioneer in the graphical representation of statistics". She is credited with developing a form of the &lt;em&gt;pie chart&lt;/em&gt; now known as the &lt;a href="https://en.wikipedia.org/wiki/Florence_Nightingale"&gt;polar area diagram&lt;/a&gt;. It is also called the Nightingale rose diagram, equivalent to a modern circular histogram. Today she would probably have distributed an open source javascript library - but computers were still one hundred years away back in 1850!&lt;/p&gt;

&lt;p&gt;But what did she do with the graphic she invented? Well, she illustrated seasonal sources of &lt;em&gt;patient mortality&lt;/em&gt; in the military field hospital she managed during the Crimean war. &lt;/p&gt;

&lt;p&gt;Because she also invented modern nursing, also known as "taking care of people". &lt;/p&gt;

&lt;p&gt;A role model not just for women in tech, but EVERYBODY in tech!&lt;/p&gt;

</description>
      <category>datascience</category>
      <category>womenintech</category>
    </item>
    <item>
      <title>Python tools for the semantic web</title>
      <dc:creator>SeriousFun01</dc:creator>
      <pubDate>Mon, 15 Feb 2021 12:11:27 +0000</pubDate>
      <link>https://dev.to/seriousfun01/python-tools-for-the-semantic-web-2e1g</link>
      <guid>https://dev.to/seriousfun01/python-tools-for-the-semantic-web-2e1g</guid>
      <description>&lt;h2&gt;
  
  
  The Semantic Web still needs introductions
&lt;/h2&gt;

&lt;p&gt;The term &lt;em&gt;Semantic Web&lt;/em&gt; refers to &lt;a href="https://www.w3.org/standards/semanticweb/"&gt;W3C’s vision&lt;/a&gt; of the Web of linked data. Semantic Web technologies enable people to create data stores on the Web, build vocabularies, and write rules for handling data. Linked data are empowered by technologies such as RDF, SPARQL, OWL, and SKOS.&lt;/p&gt;

&lt;p&gt;The Semantic Web and its acronyms have a habit of sounding frightening: From &lt;em&gt;ontologies&lt;/em&gt; to &lt;em&gt;reification&lt;/em&gt;, from &lt;em&gt;predicates&lt;/em&gt; to &lt;em&gt;reasoners&lt;/em&gt; and &lt;em&gt;open world assumptions&lt;/em&gt; it is full with arcane words and concepts. Its not clear if that is a bug or a feature (academics wanting to sound important). &lt;/p&gt;

&lt;p&gt;These concepts are by now quite old but for most web application developers they probably still don't mean anything concrete. Yet is is not that the current set of preferred tools and API's for exchanging data on the web (HTML/CSS, JSON, REST, GRAPHQL etc.) are adequate for building an global web of data that can handle the enormous complexity and variability of our data universes.&lt;/p&gt;

&lt;p&gt;The problems that the semantic web promises to solve are quite real, but for a combination of reasons that need some deeper research to uncover and properly rank, adoption has been rather niche. &lt;/p&gt;

&lt;p&gt;The past, though, might not be a good predictor of the future:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;The bottom line is that the global interconnected web needs a systematic way to communicate &lt;strong&gt;metadata about data&lt;/strong&gt; and this is what the Semantic Web really does (and not other technology is really available for this)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Python needs no introductions
&lt;/h2&gt;

&lt;p&gt;One interesting development in recent years has been the rise of Python as enabling technology that lowers the barrier of entry for people to pursue a range of information technology tasks,from datascience to web development.&lt;/p&gt;

&lt;p&gt;Can Python help bring the concepts of the Semantic Web closer to broader communities of developers? I don't know but it will be interesting to see.&lt;/p&gt;

&lt;p&gt;Without further ado, a &lt;strong&gt;list of Semantic Web Python tools&lt;/strong&gt; that lower the barrier of entry to the semantic web (feel free to add in comments others that I might have missed)&lt;/p&gt;

&lt;h3&gt;
  
  
  RDFlib
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/RDFLib/rdflib"&gt;RDFLib&lt;/a&gt; is a pure Python package for working with RDF. RDFLib contains most things you need to work with RDF, including:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;parsers and serializers for RDF/XML, N3, NTriples, N-Quads, Turtle, TriX, Trig and JSON-LD (via a plugin).&lt;/li&gt;
&lt;li&gt;a Graph interface which can be backed by any one of a number of Store implementations&lt;/li&gt;
&lt;li&gt;store implementations for in-memory storage and persistent storage on top of the Berkeley DB&lt;/li&gt;
&lt;li&gt;a SPARQL 1.1 implementation - supporting SPARQL 1.1 Queries and Update statements&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Importantly, rdflib has a &lt;a href="https://json-ld.org/"&gt;json-ld&lt;/a&gt; plugin that helps bridge the JSON world with the Semantic Web world&lt;/p&gt;

&lt;h3&gt;
  
  
  owlready
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://owlready2.readthedocs.io/en/latest/"&gt;Owlready2&lt;/a&gt; is a package for ontology-oriented programming in Python. It can load OWL 2.0 ontologies as Python objects, modify them, save them, and perform reasoning via HermiT (included). Owlready2 allows a transparent access to OWL ontologies (contrary to usual Java-based API's).&lt;/p&gt;

&lt;h3&gt;
  
  
  pySHACL
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://github.com/RDFLib/pySHACL"&gt;pySHACL&lt;/a&gt; is a pure Python module which allows for the validation of RDF graphs against Shapes Constraint Language (SHACL) graphs. It is built on top of rdflib. &lt;/p&gt;

&lt;p&gt;Shapes Constraint Language (SHACL) is data validation on steroids: It is a World Wide Web Consortium (W3C) specification for validating graph-based data against a set of conditions. Among others, SHACL includes features to express conditions that constrain the number of values that a property may have, the type of such values, numeric ranges, string matching patterns, and logical combinations of such constraints.&lt;/p&gt;

&lt;h3&gt;
  
  
  ontospy
&lt;/h3&gt;

&lt;p&gt;&lt;a href="http://lambdamusic.github.io/Ontospy/"&gt;ontospy&lt;/a&gt; expresses the statement &lt;em&gt;seeing is believing&lt;/em&gt; :-). It is a Python library and command-line interface for inspecting and visualizing RDF models.&lt;/p&gt;

&lt;p&gt;See for example this beautiful visualization of &lt;a href="http://www.michelepasin.org/support/ontospy-examples/schema_org_topbraidttl/dashboard.html"&gt;schema.org&lt;/a&gt;&lt;/p&gt;

</description>
      <category>python</category>
      <category>semanticweb</category>
    </item>
    <item>
      <title>What do people talk about at FOSDEM 2021?</title>
      <dc:creator>SeriousFun01</dc:creator>
      <pubDate>Fri, 05 Feb 2021 11:27:36 +0000</pubDate>
      <link>https://dev.to/seriousfun01/what-do-people-talk-about-at-fosdem-2021-1hig</link>
      <guid>https://dev.to/seriousfun01/what-do-people-talk-about-at-fosdem-2021-1hig</guid>
      <description>&lt;h3&gt;
  
  
  What is FOSDEM?
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://fosdem.org/2021/"&gt;FOSDEM&lt;/a&gt; is a non-commercial, volunteer-organized event centered on free and open-source software development (with a geographic focus on the European open source ecosystems / projects). FOSDEM is aimed at developers and anyone interested in the free and open-source software movement. It aims to enable developers to meet and to promote the awareness and use of free and open-source software. &lt;/p&gt;

&lt;p&gt;FOSDEM is held annually since 2001, usually during the first weekend of February, at the Université Libre de Bruxelles Solbosch campus in the southeast of Brussels, Belgium. The history of FOSDEM is neatly available at &lt;a href="https://en.wikipedia.org/wiki/FOSDEM"&gt;Wikipedia&lt;/a&gt;, while the current conference (2021) website is available &lt;a href="https://fosdem.org/2021/"&gt;here&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;FOSDEM is a large event (2 days, 8K+ participants, 800+ talks) which makes it a reasonable snapshot of the current state of the open source universe. The schedule of all 2021 talks (including abstracts) is available &lt;a href="https://fosdem.org/2021/schedule/xml"&gt;here&lt;/a&gt;. There is also a companion app (obviously open source) which you can find at &lt;a href="https://f-droid.org/en/packages/info.metadude.android.fosdem.schedule/"&gt;f-droid&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;You will probably not be surprised that in 2021, the event will be entirely online.&lt;/strong&gt; &lt;/p&gt;

&lt;h3&gt;
  
  
  What are people talking about at FOSDEM?
&lt;/h3&gt;

&lt;p&gt;We will attempt to get a glimpse at what the open source community is up to those days (or at least what they want to talk about! To get an overview of what topics are "cross-cutting" (affecting multiple projects) at FOSDEM we will use the talk abstracts:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The data set consists of the 710 talk &lt;em&gt;descriptions&lt;/em&gt; (Available at the above linked xml file). &lt;/li&gt;
&lt;li&gt;The text of each talk description is pre-processed using &lt;a href="https://www.nltk.org/index.html"&gt;NLTK&lt;/a&gt; to extract the &lt;em&gt;unique keywords&lt;/em&gt; used within each talk. &lt;/li&gt;
&lt;li&gt;Once this filtering is done, we look at the &lt;em&gt;frequency&lt;/em&gt; with which unique keywords occur across &lt;em&gt;multiple talks&lt;/em&gt;. &lt;/li&gt;
&lt;li&gt;Each keyword is thus assigned a frequency of occurrence across the conference. This controls for any speaker being particularly fond and loquacious in their use of a particular keyword in any particular abstract / description! &lt;/li&gt;
&lt;li&gt;To avoid spurious accuracy the frequency is rounded to no decimal digits. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The distribution of keywords has a very &lt;em&gt;long tail&lt;/em&gt; nature. This reflects the vast universe of projects and interests of the open source community. This translates into most of the thousands of unique keywords receiving less that 1% mention.    &lt;/p&gt;

&lt;h2&gt;
  
  
  So, what &lt;em&gt;are&lt;/em&gt; people talking about at FOSDEM 2021?
&lt;/h2&gt;

&lt;p&gt;Here are the main statistics about various concrete technologies or patterns mentioned (next to the 2020 result). The filtering of what to include among the many thousands of keywords is somewhat subjective (e.g. should we include the term &lt;em&gt;interface&lt;/em&gt; if we include the term &lt;em&gt;API&lt;/em&gt;?).&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Keyword&lt;/th&gt;
&lt;th&gt;2020 Frequency&lt;/th&gt;
&lt;th&gt;2021 Frequency&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;linux&lt;/td&gt;
&lt;td&gt;12%&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;web&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;td&gt;8%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;cloud&lt;/td&gt;
&lt;td&gt;10%&lt;/td&gt;
&lt;td&gt;7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;container&lt;/td&gt;
&lt;td&gt;7%&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;api&lt;/td&gt;
&lt;td&gt;13%&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;python&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;kubernetes&lt;/td&gt;
&lt;td&gt;6%&lt;/td&gt;
&lt;td&gt;5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;java&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mariadb&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mysql&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;postgres&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;github&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;docker&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;kotlin&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;libreoffice&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;gnu&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;google&lt;/td&gt;
&lt;td&gt;4%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;pandemic&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;javascript&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;git&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;apache&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;enclave&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;rust&lt;/td&gt;
&lt;td&gt;3%&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;intel&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;mozilla&lt;/td&gt;
&lt;td&gt;2%&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Overall we see quite a lot of stability: on the timescale of one year, the same keywords/topics seem to preoccupy the open souce community, which is not surprising given the long term investment and development roadmap of open source projects. (&lt;em&gt;The unfortunate exception this year is the **pandemic&lt;/em&gt;* keyword* which appears for the first - and hopefully last - time) &lt;/p&gt;

&lt;p&gt;Beyond the big picture, there is noticeably more &lt;em&gt;dispersion&lt;/em&gt; this year (less concentration / focus on some "hot" topics). This means less "hype" if you will. E.g. the &lt;em&gt;API&lt;/em&gt; keyword retreated from a 13% mention rate to merely 6% (still pretty high though!)&lt;/p&gt;

&lt;p&gt;Maybe a notable remark: There seems to be an increase of interest in open source &lt;em&gt;relational databases&lt;/em&gt;, with &lt;strong&gt;mariadb&lt;/strong&gt;, &lt;strong&gt;mysql&lt;/strong&gt; and &lt;strong&gt;postgres&lt;/strong&gt; all significantly exceeding the 1% threshold (which they did not cross last year). &lt;/p&gt;

&lt;p&gt;On the language front &lt;strong&gt;python&lt;/strong&gt;, &lt;strong&gt;java&lt;/strong&gt;, &lt;strong&gt;javascript&lt;/strong&gt; pretty stable, &lt;strong&gt;kotlin&lt;/strong&gt; has increased while &lt;strong&gt;rust&lt;/strong&gt; has decreased. &lt;/p&gt;

&lt;h3&gt;
  
  
  Disclaimers
&lt;/h3&gt;

&lt;p&gt;Well, there are many disclaimers, but this blog post is meant to highlight the vibrancy and fun of the open source world, not an article to be published in an esteemed &lt;em&gt;Journal of Open Sourceology&lt;/em&gt;. So we leave it at that and hopefully see you around at FOSDEM!&lt;/p&gt;

</description>
      <category>opensource</category>
      <category>fosdem2021</category>
      <category>conference</category>
    </item>
    <item>
      <title>FOSDEM 2021 is coming up!</title>
      <dc:creator>SeriousFun01</dc:creator>
      <pubDate>Mon, 01 Feb 2021 10:06:37 +0000</pubDate>
      <link>https://dev.to/seriousfun01/fosdem-2021-is-coming-up-516e</link>
      <guid>https://dev.to/seriousfun01/fosdem-2021-is-coming-up-516e</guid>
      <description>&lt;p&gt;The annual &lt;a href="https://fosdem.org/2021/"&gt;fosdem conference&lt;/a&gt; is comming up next weekend (6 &amp;amp; 7 February 2021)! &lt;/p&gt;

&lt;p&gt;This year it is all virtual so people from around the planet can join from the convenience of their laptops :-)&lt;/p&gt;

&lt;p&gt;The #fosdem schedule is busy as always, but there is an (obviously) #opensource app to &lt;a href="https://f-droid.org/en/packages/info.metadude.android.fosdem.schedule/"&gt;help planning&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There are many, many streams to cater to the diversity of the open source community, see you around the #python one ;-)&lt;/p&gt;

</description>
      <category>fosdem</category>
      <category>opensource</category>
    </item>
  </channel>
</rss>
