teleren/devto huggingface dataset:
Wednesday Links - Edition 2022-01-26
Tags: java, spring, gradle, cloud
Published: 2022-01-26 08:40:29


Gson failure in end-to-end tests (3 min)🔥
https://blog.pchudzik.com/202201/gson-fail

Distributed Transactions in Microservices with Kafka Streams and Spring Boot (9 min)⛲
https://piotrminkowski.com/2022/01/24/distributed-transactions-in-microservices-with-kafka-streams-and-spring-boot

Understanding Gradle plugins: the provider API (25 min)🔌
https://melix.github.io/blog//2022/01/understanding-provider-api.html

Replacing logging APIs with the Java System Logger (15 min)📝
https://renato.athaydes.com/posts/java-system-logging.html

Common Operations on Java Collections (7 min)🔩
https://reflectoring.io/common-operations-on-java-collections

Maintaining a medium-sized Java library in 2022 and beyond (30 min)🧰
https://michael-simons.github.io/neo4j-migrations/maintaining-a-medium-sized-java-library-in-2022-and-beyond

Benchmarking Kafka vs Chronicle for Microservices: which is 750 times faster? (6 min)🚄
http://blog.vanillajava.blog/2022/01/benchmarking-kafka-vs-chronicle-for.html

Go-live is a test of flexibility (5 min)🛫
https://mikemybytes.com/2022/01/25/go-live-is-a-test-of-flexibility

How I Got Pwned by My Cloud Costs (7 min)💸
https://www.troyhunt.com/how-i-got-pwned-by-my-cloud-costs

Treat security as a risk (3 min)🧗
https://blog.frankel.ch/treat-security-as-risk
Blockchain Terms
Tags: blockchain, web3, codenewbie, discuss
Published: 2022-01-26 08:39:47

We are hearing web 3.0, bitcoin, blockchain, cryptocurrency from long time. But terms like Ethereum, Solana, bitcoin, nft, token, Dapp often confuse us. 


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2yezg95xqwjo7x5c625e.jpg)

In this blog I am trying to make these terms clear, as I was also one of those who just knew the names, and nothing in details. Lets see a quick introduction to these. In the next blogs, I promise will write more about this, as I continue reading stuff on blockchain.

**1. Web 3.0**

Web 1.0 was first iteration of the web. It allowed adding texts and images to HTML web pages, the websites were always static.

Web 2.0 introduced social media and uploading, sharing and viewing multimedia like images, videos, mp3 etc. The time we got facebook, youtube was web 2.0
In web 2.0, data theft and lack of privacy is biggest issue. Have you ever thought, whatsapp charges nothing but still is able to earn, facebook charges nothing, instagram charges nothing from users but how they are such big companies, how are they giving salaries to employees how their CEOs are able to live a life everyone dreams of. They are "Selling your data", "Data breaching".

Web 3.0 is the latest version of web. It is
verifiable
self governing
permissionless
stateful
native built in payment
distributed
robust
Web 3 runs on decentralized network or crytoeconomic protocol.

**2. Blockchain**
Decentralized network of many peer to peer nodes(Server).

**3. Dapps**
Decentralized apps, apps that run on blockchain

**4. Cryptocurrency role in web 3.0**
It provides financial incentive for anyone who wants to participate in creating, governing and contributing to project.

**5. Ethereum**
It is a native blockchain protocol. Protocols offer variety of different services like compute, storage, bandwidth, identity, hosting and other services provided by cloud providers in past.

**6. Token**
Token introduce a native payment layer that is borderless. 

**7. Cryptowallet/ Metamask**
It enables us to integrate easy, anonymous and secure international payments and transaction into web3 applications.

In order to keep this blog short, I am ending this here. Will add description about each in next blogs. 

_**Till then, happy reading

Thank you.**_
Top Document Scanner Apps For IPhone And IPad In 2022

Tags: scannerapps, scannerapp, documentscannerapps, appdevelopment
Published: 2022-01-26 08:39:26

Scanner mobile apps are the revolution of the paper world. The Scanner apps have diminished the need for paper starting from the digital signature need for important documents to save the important ID proofs; **[scanner app](https://apps.apple.com/app/id1525076703)** has got your back for everything. There are many scanner apps available out there, but you can not trust every mobile app for your requirements, right? So, here we have listed a few best scanner mobile apps by iOS app developers. Browse through it and get the best one for your iOS mobile device.

Most Trustable Ducument Scanner Mobile Apps For iPhone And iPad In 2022

1) Scan To Go - Scanner App
2) Adobe Scan
3) Abby FineReader PDF
4) Genius Scan
5) SwiftScan
6) Camscanner
7) Evernote Scannable

**Read More: [Top Document Scanner Apps For IPhone And IPad In 2022](https://www.hyperlinkinfosystem.com/blog/top-document-scanner-apps-for-iphone-and-ipad-in-2022)**
Clone Twitter functions with ReactJS
Tags: javascript, react, webdev, programming
Published: 2022-01-26 08:38:04

I have developed a small social network web app for educational purpose and want to share this with the community. This app is built with ReactJS for frontend, Java Spring Boot for backend and MongoDB as the database.

The app tries to mimic a few functions of Twitter, including:

- Create post with text and image
- The number of characters in each post is limited to 200 characters
- Like, comment and re-post a post
- View the number of likes, comments and shares of a post
- Comments are toggle
- The number of character in each comment is limited to 100 characters
- Follow, un-follow someone
- See who are following us and follow them back
- Check who we are following
- View all posts of an individual
- View our own posts
- List all user accounts in the entire social network (due to the number of users are still small, I did not develop search user function)

Other functions:

- Due to limited storage space, client app compresses the uploaded image to the maximum of 250px (width or height) User avatar is created by hashing user id and convert that hash code into a hexagonal image
- Authentication and authorization use JWT
- Responsive frontend for desktop and mobile devices

Technical stack:

- Frontend: ReactJS, Redux Toolkit, React Router, React Bootstrap
- Backend: Java Spring Boot
- Database: MongoDB 

For source code and demo, please visit my Github repo:

https://github.com/linhtch90/psn-social-network-public-source

Please give me a ⭐ Github star ⭐ for my effort if you think this project is useful for you!
Implementing Audio in a Podcast App with Strapi
Tags: nuxt, vue, javascript, strapi
Published: 2022-01-26 08:29:22

Podcasts have exploded in popularity, and platforms including Google Podcasts and Spotify offer content creators a way to communicate their thoughts with listeners around the world. If you’d like to join them, you can create your own podcast app using Strapi and a frontend of your choice.

In this tutorial, you’ll learn to implement audio in a podcast app. You’ll build your app in Nuxt.js and manage your podcast content in the Strapi CMS.

Read the full blog on [Strapi](https://strapi.io/blog/implementing-audio-in-a-podcast-app-with-strapi).

Thanks for reading 💜

---

I publish a [monthly newsletter](https://www.ravsam.in/newsletter/) in which I share personal stories, things that I am working on, what is happening in the world of tech, and some interesting dev-related posts which I come across while surfing on the web.

Connect with me through [Twitter](https://twitter.com/ravgeetdhillon) • [LinkedIn](https://linkedin.com/in/ravgeetdhillon) • [Github](https://github.com/ravgeetdhillon) or send me an [Email](mailto:ravgeetdhillon@gmail.com).

— [Ravgeet](https://www.ravgeet.in/), *Full Stack Developer and Technical Content Writer*
.NET Core PDF Library
Published: 2022-01-26 08:29:17

---
canonical_url: https://ironpdf.com/docs/questions/dotnet-core-pdf/
---

IronPDF is available for both Microsoft Windows .NET framework 4.x, as well as a recent release for .NET Core 2.x

IronPDF for .NET Core is available through the Nuget Package manager: Package Name [Pdf.Core](https://www.nuget.org/packages/PDF.Core/)

The current .NET Core release supports Linux, Unix and MacOS client operating systems as well as mono. A future release will support Xamarin mobile environments.

Existing and new customers receive free upgrades to the .NET Core build of IronPDF within their existing Support & Upgrade coverage. This is provided with every [commercial license](https://ironpdf.com/licensing/). This ensures your investment in IronPDF is Future Proofed.

Existing customers who wish to extend expired support & update cover can [purchase an extension here](https://ironpdf.com/licensing/extensions/).
Page Numbers and Page Breaks (Code Example)
Published: 2022-01-26 08:20:43

---
canonical_url: https://ironpdf.com/examples/page-numbers-and-page-breaks/
---

**C#:**
```
// PM> Install-Package IronPdf
 
using IronPdf;
 
var html = @"
<p> Hello Iron</p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;' ></div>
<p> This is 3rd Page</p>";
 
var Renderer = new IronPdf.ChromePdfRenderer();
 
Renderer.RenderingOptions.HtmlFooter = new IronPdf.HtmlHeaderFooter()
{
 
    MaxHeight = 15, //millimeters
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};
 
var pdfdoc = Renderer.RenderHtmlAsPdf(html);
pdfdoc.SaveAs("pageNumber.pdf");
```

**VB:**
```
' PM> Install-Package IronPdf
 
Imports IronPdf
 
Private html = "
<p> Hello Iron</p>
<p> This is 1st Page </p>
<div style = 'page-break-after: always;' ></div>
<p> This is 2nd Page</p>
<div style = 'page-break-after: always;' ></div>
<p> This is 3rd Page</p>"
 
Private Renderer = New IronPdf.ChromePdfRenderer()
 
Renderer.RenderingOptions.HtmlFooter = New IronPdf.HtmlHeaderFooter() With {
	.MaxHeight = 15,
	.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
	.DrawDividerLine = True
}
 
Dim pdfdoc = Renderer.RenderHtmlAsPdf(html)
pdfdoc.SaveAs("pageNumber.pdf")
```

IronPdf’s “Headers and Footers” functionality allows us to merge in information about page numbering.

This works in HtmlHeaderFooters and TextHeaderFooters alike.
E.g. `{page} of {total-pages}`

To create a page break in Html to PDF in .NET - just use this HTML snippet:
`<div style='page-break-after:always;'></div>`
Is this the correct way to use useSWR with getServerSideProps?
Tags: nextjs, swr, react, javascript
Published: 2022-01-26 08:18:17

This is the code sandbox example of how I'm using SWR with getServerSideProps: https://codesandbox.io/s/useswr-with-getserversideprops-nextjs-9u1gp?file=/containers/PostContainer/index.js 

github repo [link](https://github.com/shubham2270/useSWR-with-serverSideProps-nextjs)
What I want to achieve is on the post/[post] page the meta tags will be dynamic coming from the backend & will be users specific that's why I'm using getServerSideProps instead of getStaticProps, the above code is working fine but when I see the terminal on clicking a post it's calling the API 3 times & when I again click the same post API is being called 2 times is this normal behaviour?
Day 18 of 100 - Java: Using a pom depedency
Published: 2022-01-26 08:03:39

Today I tried to build a project with [commonmark-java](https://github.com/commonmark/commonmark-java). Here is the repo [j143/markdown-testing](https://github.com/j143/markdown-testing)

In the `pom.xml` file, add dependency as

```xml
    <dependencies>
        <dependency>
            <groupId>org.commonmark</groupId>
            <artifactId>commonmark</artifactId>
            <version>0.18.1</version>
        </dependency>
    </dependencies>

```
Today's Daily Humor For Devs - Daily Developer Jokes
Tags: jokes, dailydeveloperjokes
Published: 2022-01-26 08:00:15

---
title: "Today's Daily Humor For Devs - Daily Developer Jokes"
description: "Check out today's daily developer joke! (a project by Fred Adams at xtrp.io)"
series: "Daily Developer Jokes"
published: true
tags: #jokes, #dailydeveloperjokes
---

Hi there! Here's today's Daily Developer Joke. We hope you enjoy it; it's a good one.

![Joke Image](https://private.xtrp.io/projects/DailyDeveloperJokes/public_image_server/images/5e12591e45d64.png)

---

For more jokes, and to submit your own joke to get featured, check out the [Daily Developer Jokes Website](https://dailydeveloperjokes.github.io/). We're also open sourced, so feel free to view [our GitHub Profile](https://github.com/dailydeveloperjokes).

### Leave this post a ❤️ if you liked today's joke, and stay tuned for tomorrow's joke too!

_This joke comes from [Dad-Jokes GitHub Repo by Wes Bos](https://github.com/wesbos/dad-jokes) (thank you!), whose owner has given me permission to use this joke with credit._

<!--
Joke text:
___Q:___ Why didn't the `<div />` get invited to the dinner party?

___A:___ Because it had no class!
 -->
I Started my new freelance business in 2022
Published: 2022-01-26 07:58:13

[Wedodevelop😈](https://wedodevelop.ml)

We do designs and develops mobile and web apps that satisfy users and grow their business. We work with individuals and organizations to create products and help them to market to the target audience

you can contact us directly through [email](mailto:wedodevelopcontact@gmail.com) or contact us through social medias

[Linkedin](https://www.linkedin.com/company/wedodevelop), [Instagram](https://www.instagram.com/wedodevelop/)
Rasterize a PDF to Images (Code Example)
Tags: pdf, pdftoimage, tutorial, devops
Published: 2022-01-26 07:37:34

---
canonical_url: https://ironpdf.com/examples/rasterize-a-pdf-to-images/
---

**C#:**
```
// PM> Install-Package IronPdf
using IronPdf;
using System.Drawing;
 
 
//Example rendering PDF documents to Images or Thumbnails
 
var Pdf = PdfDocument.FromFile("Example.pdf");
 
//Extract all pages to a folder as image files
Pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");
 
//Dimensions and page ranges may be specified
Pdf.RasterizeToImageFiles(@"C:\image\folder\thumbnail_*.jpg", 100, 80);
 
 
//Extract all pages as System.Drawing.Bitmap objects
System.Drawing.Bitmap[] pageImages = Pdf.ToBitmap();
```

**VB:**
```
' PM> Install-Package IronPdf
Imports IronPdf
Imports System.Drawing
 
 
'Example rendering PDF documents to Images or Thumbnails
 
Private Pdf = PdfDocument.FromFile("Example.pdf")
 
'Extract all pages to a folder as image files
Pdf.RasterizeToImageFiles("C:\image\folder\*.png")
 
'Dimensions and page ranges may be specified
Pdf.RasterizeToImageFiles("C:\image\folder\thumbnail_*.jpg", 100, 80)
 
 
'Extract all pages as System.Drawing.Bitmap objects
Dim pageImages() As System.Drawing.Bitmap = Pdf.ToBitmap()
```

IronPDF allows any PDF document to be exported to image files in convenient formats or Bitmap objects. Image dimensions and page number ranges may also be specified.
URL to a PDF (Code Example)
Published: 2022-01-26 07:33:02

---
canonical_url: https://ironpdf.com/examples/converting-a-url-to-a-pdf/
---

**C#:**
```
// PM> Install-Package IronPdf
 
using IronPdf;
 
 
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
 
Pdf.SaveAs("url.pdf");  
// see also Pdf.Stream
```

**VB:**
```
' PM> Install-Package IronPdf
 
Imports IronPdf
 
 
Private Renderer As New IronPdf.ChromePdfRenderer()
Private Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
 
Pdf.SaveAs("url.pdf")
' see also Pdf.Stream
```

IronPDF makes it very straightforward to render HTML from existing URLs as PDF documents. There is a very high level of support for Javascript, Images, Forms and CSS.

Rendering PDFs from ASP.NET URLs which accept query string variables can make PDF development an easy collaboration between designers and coders.
A11y tips: offer alternatives to any functionality
Tags: a11y, tips, html
Published: 2022-01-26 07:27:08

Using a mobile device allows us some interactions not available in the desktop version, such as rotating it, shaking it, using two fingers to zoom...

While offering many possibilities to enrich the user experience, it opens the door to new barriers for users with some type of disability.

For this reason, it is especially important to **always offer alternatives to all these interactions** so that we do not prevent anyone from enjoying them.

If your mobile version...

- ... can be rotated, make sure that **the same information can be accessible and work both in portrait and landscape**, that your design is really responsive. There are people who may be browsing with the device fixed on a support and for whom turning it is really difficult or they cannot do it.

- ... can update data by shaking the device, make sure you **put a** `Reload` **button that allows you to do the same by clicking on it**. There are people who may be browsing who cannot shake the device but can comfortably access a button marked in an accessible way.

- ... you can zoom by sliding two fingers on the screen, **add a** `+` **and** `-` **buttons to zoom in and out**. Some people can't swipe with their fingers, but with the help of assistive technology, they can hit a properly marked button.

In all these cases, it is highly recommended to **keep the original function**, since it is very useful and takes advantage of the capabilities offered by mobile devices. It is not about impoverishing or making the use of our websites more boring, but about **enriching it by making it more diverse** by adding multiple ways to enjoy them.

To do this, it is enough to think of all users, not just the vast majority. After all, who hasn't ever broken an arm and found it difficult to use a website? **We have the tools to keep moving forward without leaving anyone behind**.
Best No-Code App Builders
Tags: mobile, programming, app, lowcode
Published: 2022-01-26 07:18:15

A no-code app builder is a great resource for creating your own application without programming skills or a huge budget. These platforms often have the pre-built templates, drag-and-drop functionality to design UI, and integrations with  databases, so they can ultimately be deployed as your own mobile or web app.

There are many no-code app builders on the market, and it can be hard to find the best option, especially because you can often only see a landing page, marketing information, and exciting slogans. 

Serhii Pospielov, AI Practice Head at [Exadel](https://exadel.com/), reviewed several no-code app builders from a developer's point of view. He tried to create MVPs on 13 different platforms, but only managed to achieve that on five (this doesn’t mean that the other eight aren’t good platforms – just that they didn’t meet his particular business need).  Serhii’s favorite no-code app builders were: 

1. [Appery.io](https://appery.io/), 
2. [AppGyver](https://www.appgyver.com/), 
3. Check out his [Best No-Code App Builders (Part 1)](https://medium.com/swlh/best-no-code-app-builders-part-1-97e70b67769f) on Medium and see the other top platforms in his list along with their screenshots of interfaces. 

You’ll also find concrete information about the difference between no-code and low-code mobile app builders, the role of back end on a mobile application, the key stages in developing a mobile app, and more things to consider when evaluating the costs of no-code app builders.
Streaming PC audio to phone
Tags: audiorelay, streaming, problemwithbluetooth
Published: 2022-01-26 07:00:57

Many people have use Chromecast or screen mirroring tool to cast their video and audio from phone to tv or pc to tv when connected to the same Wi-Fi network.

There was no possibility of streaming audio from pc to phone via Wi-Fi until I found a tool to do it. It was greatly helpful as my pc's Bluetooth stopped working for which I was not able to use my Bluetooth earphone or speaker.  

This is the reason I am sharing this article here as it would be helpful to others facing this problem.

Now Let's get started with the steps to Stream PC audio to phone through which you can stream it to you Bluetooth headset or speaker.

**You can also use your phone as a mic in this method by choosing the relevant device.**

##1.Download Audio Relay in your PC or Laptop and phone.

[Windows](https://audiorelay.net/download)
Some screenshots to make sure that you have the original version:
![A peek at the software](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/xhmpi46w6x1l722gf4lc.png)

[Android](https://play.google.com/store/apps/details?id=com.azefsw.audioconnect)
![A peek at the app](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/8fe7e3hwphbxaijk1pne.jpeg)

##2.Make Sure that your PC and Phone are connected to the same Wi-Fi network and open the software in PC or Laptop.
![Same Wi-Fi Network](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0a0bfr6bg4cc29ukg0ra.png)
 
##3.Open the app in your Phone. If both the devices are connected on the same Wi-Fi network, The name of the other device will appear in the app along with the temporary ip-address.

![Device Appearance](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/alstj5s46zrjfs7levtq.png)

Click on the Desired Device.
  
##5. If you need to stream it to the Bluetooth devices just connect to the phone via Bluetooth. I am pretty sure that every phone has a Bluetooth.



##6.Choose the device on pc(Speaker or Mic) which you would like to use form you phone.
 ![Speaker or Mic](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/4pn0lqrigfs86a2tibs1.png)
 
That's it. It's Simple as the 6 steps.

If you face any problem do mention it in the discussion. I would love to resolve it.
Nginx Simple Cheatsheet
Tags: nginx, centos, amazonlinux
Published: 2022-01-26 07:00:18

This is my own Nginx cheatsheet. Checked with CentOS6, 7 and Amazon Linux and Amazon Linux 2

All commands are under assumption that you are root, or use with `sudo`

## Start

```
nginx
```

## Stop

CentOS 6 & Amazon Linux

```
nginx -s stop
```

CentOS 7 & Amazon Linux 2

```
systemctl stop nginx
service nginx stop
```

## Restart

entOS 6 & Amazon Linux

```
/etc/init.d/nginx restart
```

CentOS 7 & Amazon Linux 2

```
systemctl restart nginx
service nginx restart
```

## Register startup

CentOS 7 & Amazon Linux 2

```
systemctl enable nginx
systemctl disable nginx
```

## Reload config

CentOS6 & Amazon Linux

```
nginx reload
service nginx reload
```

CentOS7 & Amazon Linux 2

```
systemctl reload nginx
service nginx reload
```

## Check config

```
nginx -t
```

## General location of config

Main

```
cd /etc/nginx/
```

Virtual hosts

```
cd /etc/nginx/conf.d/
```
Day 2/100 Java
Tags: 100daysofcode, beginners
Published: 2022-01-26 06:53:05

Morning!

**Language:**
JAVA

**Time Period Spent:**
2hrs

**Course Taken:**
Udemy: Java Programming Masterclass - Tim Buchalka

**Todays Learning:**
- If Statements
- If Logical and / or (&& and ||) operator
- Assignment operator vs Equal to operator
- Operator Precedence
- Ternary Operator
- Section end challenges:
	- Operator Challenge
	- Floating Point and precision Challenge
	- If operator Challenge
	- Ternary Challenge

**Additional Notes:**
Section 2 of the course is now over and out. Happy with the results and the refresher that I was introduced by this course. There is a large difference in operators and use cases in this language that are alien to me but at the same time I find compelling. Ternary Operators: grants the use of boolean assignment. This invokes the ability to somewhat check and assign a value depending on the conditions of the operator and its previous variable supplied.