teleren/devto huggingface dataset:
Writing RevolveR CMS just for fun
Tags: php7, css3, es7, html
Published: 2018-10-18 15:36:49

---
title: Writing RevolveR CMS just for fun
published: true
description: Simple, fast and cachable CMS with simple forum future
tags: PHP7, CSS3, ES7, HTML5
---

RevolveR CMS is a fast, simple and powerfull contents management system based on PHP 7 language with MySQL DataBase used file cache intended to create news sites, blogs and forums writed just for fun at 6 month of coding.


![RevolveR CMS](https://thepracticaldev.s3.amazonaws.com/i/36mmj8l34s3x7jgi6jvn.png)

RevolveR CMS is secure and mobile friendly system with perfect SEO compability. It have full dynamic load pages support, Google AMP and Yandex Turbo pages solutions.

In a case I don't like to use any third party components and write all code self( including Data Base Wrapper X and frontend library [Revolver used ES7 solutions](https://github.com/xShiftx/RevolveR) so this CMS not intended to use with browsers older than IE Edge).

I was pushed into implementation by slowly Drupal 8 realisation with very hard and dificulty simphony sources. I want to use CMS fast and simple and want to be it payments free for me and other peoples.

Few days I'am looking at WP and other CMSes and lets write my own condition. That's what happened:

1). No dependencies and server requirements(minimal PHP modules requirements).

2). Speedy, lightweight, simple.

3). Self database engine with structures based queries.

4). Self frontend library RevolveR coded in ES 7 JavaScript.

5). Full fetch support of dynamic forms and interfaces.

6). Support of user accounts.

7). Support user points.

8). Full humanity, secure and powerful router(good links for contents).

9). Self developed very simple captcha secure front-end crypted.

10). Support of contents creating with range of categories.

11.) Commenting support.

12). Uploads support.

13). SEO friendly.

14). Self contents editor.

15). Friendly installer.

16). Private messages support.

17). Email notifications support.

18). Twilio SMS notify support

19). Simple forum.

20). Roles support.

21). Internal SEO statistics and tics counters with detailed information about what pages users like more.

Performance is a strong side of RevolveR CMS:

1). 0.5 Mb memory needed with clean website;
2). only one query to DB needed to render cached site;

![RevolveR CMS preferences](https://thepracticaldev.s3.amazonaws.com/i/81sofsyxyfktc2ujxccw.PNG)

For a winter time I plane to do some reconstruction of core and add an ecommerce shop module.

Requirements: any Linux Apache, PHP 7, MySQL webhosting. I am not recomend to install it to Windows hosts because all developments was done under Mac OS + MAMP.

All critics are welcome. 

[Sources github](https://github.com/xShiftx/RevolveR_CMS)
[Devel website and demo](https://cyberx.pro)
What's the version of that installed Perl module?
Tags: perl, cpan
Published: 2018-10-18 15:23:14

---
title: What's the version of that installed Perl module?
published: true
description: Here's a neat trick to find out what version of a Perl module is installed.
tags: #perl,#cpan
---

Here's a neat trick to find out what version of a Perl module is installed.

Let's try with `Carp`.

    perl -MCarp\ 99999 -e 1

    Carp version 99999 required--this is only version 1.42.
    BEGIN failed--compilation aborted.

The way this works is that we ask the runtime to load a very high version, and then wait for `perl` to apologize that it only has current version x, in this case `1.42`.

Note the escaped space between the module and the version:
`-MCarp\ 99999`.
PostgreSQL Configuration: Part 2
Tags: postgres, learning, tutorial
Published: 2018-10-18 15:12:31

---
title: PostgreSQL Configuration: Part 2
published: true
description: Understanding pg_hba.conf, postgresql.conf, and how to use them to tune our systems.
tags: postgresql, learning, tutorial
---

https://www.smoothterminal.com/articles/general-configuration-1
How to build abstraction layers in large front-end application?
Tags: angular, frontend, javascript
Published: 2018-10-18 14:52:54

---
title: How to build abstraction layers in large front-end application?
published: true
description: 
tags: angular, frontend, javascript
canonical_url: https://www.youtube.com/watch?v=Rc-xMHMYw_M
cover_image: https://thepracticaldev.s3.amazonaws.com/i/ekj3542yxkbe7sevoahv.png
---
Watch the talk here: https://www.youtube.com/watch?v=Rc-xMHMYw_M
MySQL Editor in NodeJS ~ Part Five
Tags: mysql, node, learning, opensource
Published: 2018-10-18 14:48:18

---
title: MySQL Editor in NodeJS ~ Part Five
published: true
description: Learning to use NodeJS
tags: MySQL, node, learning, opensource
cover_image: https://thepracticaldev.s3.amazonaws.com/i/iply2eckh6x45bbw03ml.png
series: Project NodeTree
---

# MySQL Editor in NodeJS

This is the final week of the MySQL Editor mini-series, the project is not finished but it is now functional and open source. If anyone wants to look at the project and maybe submit an issue or even a pull request please do.

This week I've made the query box work, rather than just being for show as before, I've also made it so you can edit fields.

If you'd like to follow along with my journey here is my [post index](https://dev.to/link2twenty/adventures-of-a-hobbyist--index-4oj7).

{% github ignis-pwa/nodetree %}

## Query box

Last week I made a function I could pass a query to, the function would then go off and get the data from the server and deal with it. This week I made another function that read the contents of the query box and passed it on the origial function. Currently, you do this by pressing CTRL + Enter which, of course, doesn't work for mobile users so that's a bug that needs addressing.

![Query box](https://thepracticaldev.s3.amazonaws.com/i/1vt5c70re7njvfxkw7c9.gif)

## Editing fields

For editing fields, I went back to the code that produces the table. Now if the query gives data that should be editable an event listener is added, listening for focus and blur, that when triggered a function checks to see if the content has changed if so a confirmation is requested from the user.

![Editing fields](https://thepracticaldev.s3.amazonaws.com/i/jgip1rjrwlwydnwkkqq5.gif)

## What next

As I said at the top of the post, I don't intend to carry on documenting this process, I will continue to bug hunt and generally try and add more polish but I think I've learnt all I can from this project.

### Bug-list and to-do's
- the database page isn't mobile friendly
- needs a service worker
- it would be nice to add PWA support
- mobile users can't execute custom queries
- there should be an option to require username at login

If there are more bugs you can see or more features you think would be useful feel free to leave a comment or raise an issue over on the GitHub page. Thank you.

## Signing off

I'll be back to writing Adventures of a Hobbyist soon, I think the first post back will be a summary of these past 5 posts and what I've learnt along the way. Thank you for reading.

🦄❤
Have you got any benefits from writing tech articles or having a tech blog?
Tags: discuss, blogging
Published: 2018-10-18 14:39:57

---
title: Have you got any benefits from writing tech articles or having a tech blog?
published: true
description:  Cool job opportunities? New customers? Valuable Connections? Or just a waste of time?

tags: discuss, blogging
---

Cool job opportunities? New customers? Valuable Connections? Or just a waste of time?
.NET MSTest and DeploymentItem Attribute
Tags: net, development, problemsolving, programming
Published: 2018-10-29 00:39:15

---
title: .NET MSTest and DeploymentItem Attribute
published: true
tags: .NET,Development,Problem Solving,Programming
canonical_url: https://www.briannipper.com/2018/10/net-mstest-and-deploymentitem-attribute.html
---

[![](https://1.bp.blogspot.com/-yUScwKt9f9U/W8fwKMIkjpI/AAAAAAAAHM8/XOOQefRICNkqfBvzhV0FQxt9DdxoZu3WACKgBGAs/s320/CA5FCC3D-1D3E-4C3B-BA16-72809A47E0BA.jpeg)](https://1.bp.blogspot.com/-yUScwKt9f9U/W8fwKMIkjpI/AAAAAAAAHM8/XOOQefRICNkqfBvzhV0FQxt9DdxoZu3WACKgBGAs/s1600/CA5FCC3D-1D3E-4C3B-BA16-72809A47E0BA.jpeg)
I was recently reminded that order of operation can byte you when trying to troubleshoot intermittent unit test failures.

  

First, I’ll be the first to admit that if you want to avoid problems with unit testing it’s best to avoid any dependency outside of your actual code base, things like databases, API and even the file system are best avoided in execution of your unit tests. That last one, the file system, in some applications is really hard to avoid.

  

If you happen to be using MSTest, a helpful attribute for your test is DeploymentItem. This particular attribute allows you to define a file within your unit test project assuming it’s marked as “Copy Always”. With this attribute in place you can then combine this with TestContext.DeploymentDirectory to find this sample file and then do what you need to do.

  

In my particular case I was having an issue with the unit tests failing on the build machine but not locally. After stumbling around for a bit I finally feel back to the old debugging standard of printing out the entire directory of files to the console. It was at this point that I realized I was able to create files in the expected location so why could I not find the DeploymentItem? The answer, side effects.

  

In one test I “moved” the resource item, and it had just been a situation where locally the tests “happen” to execute in an order such that the move operation was happening at the end of the test cycle, thus masking the problem. When I switch the test in question to “copy” the file, which was still a valid test mind you my problems went away.

  

As an alternative approach to solving this problem you could make the file an embedded resource and then, in the arrange part of the test, write out the file to disk and then perform the test to ensure that the file always exists at the start.

  

I hope this information helps others avoid wasting time with these type of silly order of operation problems.
Continued Learning For Intermediate Developers
Tags: discuss, career
Published: 2018-10-18 13:46:08

---
title: Continued Learning For Intermediate Developers
published: true
description: Where do you go to keep up to date?
tags: discuss, career
cover_image: https://thepracticaldev.s3.amazonaws.com/i/kni7sflqjv3jy9whe7gs.png
---

A question I see asked every now and then that has stuck with me is "do you have ten years of experience, or just one year repeated ten times?"

Next month, I will have been a professional web developer for seven years. I like to think I managed to fit seven years of experience into that time, but that question still troubles me.

For the last couple years at work, I've been working on a single Rails 4 application, with the occasional jaunt into C# and PHP. The application has reached a pretty stable stage of development now, so my opportunities to learn radically new stuff while at work are pretty limited.

I really want to push myself to a point where I am comfortable referring to myself as "an expert", but I'm not sure what the best way to proceed is.

What are your experiences in trying to bridge the gap between intermediate and expert? Do you think it's better to pursue learning opportunities (like the recently free [Upcase](https://thoughtbot.com/upcase) by Thoughtbot [they're not paying me]) or do you go with side projects?

If you are already pretty comfortable with the technology, how do you pick side projects that will really push you without it becoming a second job?
Should You Learn TypeScript? (Benefits & Resources)
Tags: javascript, webdev, discuss, typescript
Published: 2018-10-19 14:44:50

---
title: Should You Learn TypeScript? (Benefits & Resources)
published: true
tags: javascript, webdev, discuss, typescript
canonical_url: https://snipcart.com/blog/learn-typescript-why-use-ts
---

![Should You Learn TypeScript? (Benefits & Resources)](https://snipcart.com/media/203922/learn-typescript.png)

Being a JavaScript developer is a commitment to always be on the alert.

The learning curve never stops at a precise moment. So you’re always juggling numerous questions in your head.

“Should I learn Vue.js, React... both?”

“What about functional programming? [Looks interesting](https://snipcart.com/blog/functional-programming-paradigm-concepts)!”

“Is server-side JavaScript [any good](https://snipcart.com/blog/javascript-nodejs-backend-development)?“

**"Should I learn TypeScript?"**

Today I feel like tackling this last question.

We recently played with [TypeScript](https://www.typescriptlang.org/) at Snipcart: we're using it to re-write our cart's next version. So, perfect timing to dive into TS on the blog!

This post will cover:

1. What is TypeScript?
2. Why should you learn it?
3. When should you use it?
4. How can you start learning TypeScript?

**I’ve also prepared code examples to demonstrate differences between TypeScript and JavaScript.** 

Let’s get started!

## What is TypeScript?

TypeScript is a statically typed superset of JavaScript that compiles to plain JavaScript.

In other words, **it's JavaScript that scales**.

![learn-typescript](https://snipcart.com/media/203922/learn-typescript.png)

But to truly understand what it means, we first have to backpedal into the evolution of JavaScript. Actually, we have to remember what JS was intended for.

JS started as the language of the browsers, at a time where they were not that powerful. Being a dynamic language&mdash;with no “type” system&mdash;its aim wasn’t to build large-scale apps.

In the last five to six years though, JavaScript has exploded. It’s used everywhere: from 100-1000000 code lines programs. The problem is, it doesn’t have the scaling abilities of more mature language like C# or Java.

Some eventually asked: What can we do to make JavaScript **scale** better?

TypeScript was [Anders Hejlsberg](https://en.wikipedia.org/wiki/Anders_Hejlsberg) and Microsoft's answer.


  

→ Read the full post [here](https://snipcart.com/blog/learn-typescript-why-use-ts)
How add keyboard shortcuts on google search pages
Tags: googlechrome, javascript
Published: 2018-10-18 13:17:40

---
title: How add keyboard shortcuts on google search pages
published: true
description: Better user experience
tags: Google Chrome,JavaScript
---

![keyboard](https://thepracticaldev.s3.amazonaws.com/i/gkloklzf67kq0ea0vn86.jpg)


Hi, there.

How do you open a link when you go to the Google search results page?
Use mouse?
Use tab key?

If so, you are missing valuable user experience.

In the past, short cuts were installed on the Google search result page.
Unfortunately, that function was *killed*.



## Solution

I wanted to get the impression, I made it.
This is an extension of Google Chrome.

[fake-google-keyboard-shortcuts](https://chrome.google.com/webstore/detail/fake-google-keyboard-shor/fbncheplcafgghkdodoilhclpmmahcnk)

I have not tested everything, but it should work in **most countries**.


## Documentation

[https://github.com/ArcCosine/fake-google-keyboard-shortcuts](https://github.com/ArcCosine/fake-google-keyboard-shortcuts)

See github.


## How to use.


Easy to use.

Install, search keywords on google, and use **j** or **k** or **enter** or **/**.
Have a nice experience!
I have created a chrome extension to paste random data to form fields 🎷🥁
Tags: chromeextension, typescript, opensource
Published: 2018-10-18 12:16:59

---
title: I have created a chrome extension to paste random data to form fields 🎷🥁
published: true
description: Since the last two days I was working on a chrome extension, which can insert fake data to form fields. and finally I have published it in chrome web store
tags: chrome extension, typescript, opensource
---

Hey guys, 

> Since the last two days I was working on a chrome extension, which can insert fake data to form fields. and finally I have published it in chrome web store, you can check it out ⚡️ [here](https://chrome.google.com/webstore/detail/random-text-generator/lmealcdbihjhocippaajjhijhjciaojo) ⚡️

I was tinkering around typescript for a few days and then I thought yes. I should do something with typescript.🤠

And one day my colleague was testing a feature where he needs to fill a lot of forms, he was copying lorem ipsum from one site and pasting it into the form field. I told him, Man... you can do better, check for a chrome extension and you can fill the form easily for testing purpose.

He did a search and found some extensions which were helping him. but still, the copy paste part was involved, (ie: you click on the extension icon, it will give a popup and you need to copy it from there and paste it in the form. ) which of course was not up to the mark.

And moreover there is no support for data like a credit card, names, address, zip code etc... and yes ☃️, I got my idea for a chrome extension and again I can try doing it in typescript and it will be good to learn the chrome API's as well. yay... yay...

I took [faker.js](https://github.com/marak/faker.js) as a starting point and it can generate almost any type/amount of fake data as required.and its a widely accepted library for unit testing purpose as well. 

But as the project progressed, it took 2 entire nights to figure out the typescript intricacies, and the chrome extension architecture, Then I was like, okay... rather than doing a full-blown extension, let me create a version, where it can give a random text for a given length and publish a beta. Then from there I can keep adding features.

Today I did it 🍾🍾🍾

So at this point, after the installation of the extension, you need to press 
`Alt + Shift + I`, and then give a length in the prompt box. Your last focused input field will be filled with random data. 

**Extension Url** -  https://chrome.google.com/webstore/detail/random-text-generator/lmealcdbihjhocippaajjhijhjciaojo
**Github Repo** - https://github.com/ppshobi/chrome-random-text-generator %}

**So guys... please test it out. Let me know the issues here or in the github issues page. If you would like to contribute I would be glad to guide you as well. ❤️❤️❤️**


#### Short Demo Video

{% youtube _sGQypdmLXc %}
React Comments App
Tags: react, javascript, firebase
Published: 2018-10-18 11:52:16

---
title: React Comments App
published: true
description: A simple comment system, built with ReactJS, integrated with Firebase, using authentication and real-time database, based on the DevReactJS Devpleno course. 
tags: #reactjs, #javascript, #firebase
cover_image: https://thepracticaldev.s3.amazonaws.com/i/qr73bz3k29e6k5wyfb50.png
---

# React Comments App

A simple comment system, built with ReactJS, integrated with Firebase, using authentication and real-time database, based on the DevReactJS [Devpleno] course.


**Site:** [react-comments-app]
![comments](https://thepracticaldev.s3.amazonaws.com/i/iikl7rpc6olre4o8rf7b.gif)



### Prerequisites

What things you need to install the software and how to install them

* node.js
* NPM Package Manager
* Create token in [Firebase]

**Note:** After creating the token, necessary put your token on Base.js file.


### Installing

Clone this repository

```
git clone https://github.com/mariorodeghiero/reactjs-comments-app.git
```

Installing the dependencies from the NPM Package Manager

```
npm install
```

To start the development environment, run the following command:

```
npm run start
```

or

```
yarn start
```


## Deployment

Run the command below to deploy, minimizing All Files.

```
npm run build
```

or

```
yarn build
```

After run, the browser open window automatically at http://localhost:3000/


## Built with

* React.js
* Firebase



####  ⚖️ MIT License


I created this application to test and share knowledge acquired in the studies on ReactJS.
If you liked this project, contribute improvements, send your PR or give me a star ⭐️ on  [GitHub.](https://github.com/mariorodeghiero/reactjs-comments-app)

I hope you like ✌️
Thanks and this is my [Twitter] 

[react-comments-app]: https://reactjs-9528e.firebaseapp.com
[Twitter]: https://twitter.com/rodeghiero_
[devpleno]: https://www.devpleno.com
[firebase]: https://firebase.google.com
The Minimum You Should Do To Prevent Memory Leaks in Swift
Tags: ios, swift, testing, learning
Published: 2018-10-18 10:54:43

---
title: The Minimum You Should Do To Prevent Memory Leaks in Swift
published: true
tags: ios, swift, testing, learning
canonical_url: https://www.essentialdeveloper.com/articles/the-minimum-you-should-do-to-prevent-memory-leaks-in-swift
cover_image: http://static1.squarespace.com/static/5891c5b8d1758ec68ef5dbc2/58921b5a6b8f5bd75e20b0f4/5bc85ebdeef1a1810606a636/1539859125113/t1.png?format=1000w
---

{% youtube Gg-2nZYRd2g %} [Watch on YouTube](https://www.youtube.com/watch?v=Gg-2nZYRd2g&list=PLyjgjmI1UzlTtsImzQ4cT8bQ3_RXtkqLg)

In this episode, we continue [the Clean Swift Tests discussion](https://www.essentialdeveloper.com/articles/xctest-swift-setup-teardown-vs-factory-methods), and we demonstrate a way for preventing memory leaks through automated testing.

There's a large class of bugs, security threats and user experience problems (e.g. crashes and high memory consumption) related to memory leaks. Although this is an important topic, why do the majority of apps (Apple included) fail to prevent memory leaks?

**Answer: many developers rely on error-prone manual checks.**

Manual checks might seem like a good fit in early stages. However, the codebase expands, requirements change, new developers join the team, pressure builds up, and deadlines approach. Under those stressful conditions, the manual checks have a high probability of failure due to human error. Moreover, the number of possible combination checks are too many, and they grow exponentially, which makes it humanly impossible to check all logical branches. Can we avoid such a scenario?

**Answer: yes, with** [**good architecture**](https://www.essentialdeveloper.com/articles/clean-ios-architecture-part-2-good-architecture-traits) **and** [**automated tests**](https://www.essentialdeveloper.com/articles/ios-automation-testing-tools-vs-economics-is-it-worth-the-cost)**!**

[Subscribe now to our Youtube channel](https://www.youtube.com/essentialdeveloper?sub_confirmation=1) and catch **free new episodes every week**.

* * *

We’ve been helping dedicated developers to get from low paying jobs to **high tier roles – sometimes in a matter of weeks!** To do so, we continuously run and share free market researches on how to improve your skills with **Empathy, Integrity, and Economics** in mind. If you want to step up in your career, [access now our latest research for free](https://www.essentialdeveloper.com/courses/career-and-market-strategy-for-professional-ios-developers).

* * *

Originally published at [www.essentialdeveloper.com](https://www.essentialdeveloper.com/articles/the-minimum-you-should-do-to-prevent-memory-leaks-in-swift).


## Let’s connect
If you enjoyed this article, visit us at [https://essentialdeveloper.com](https://essentialdeveloper.com) and get more in-depth tailored content like this.

Follow us on: [YouTube](https://youtube.com/essentialdeveloper) • [Twitter](https://twitter.com/essentialdevcom) • [Facebook](https://facebook.com/essentialdeveloper) • [GitHub](https://github.com/essentialdevelopercom)