teleren/devto huggingface dataset:
A dev.to client pwa application with vuejs
Tags: javascript, vue, pwa, api
Published: 2019-10-15 14:38:51

---
title: A dev.to client pwa application with vuejs
published: true
description: This is very basic dev.to API based client pwa application written in vuejs
tags: javascript, vue, pwa, api
cover_image: https://thepracticaldev.s3.amazonaws.com/i/mr840zdnxsx3pjrldbwm.png
---
**Originally posted on [Ashraful's Blog](https://ashraful.dev/posts/a-dev.to-client-pwa-application-with-vuejs.html)**

## Intro
Hello there, Have you ever wished to have all the dev.to posts under your own domain. It's time to achieve this. I have created an open source project name `dev.to-client` application. So, that you can easily setup as your own. And it's highly configurable.

## Features
* Single Page Application. So, it's really faster than you believe.
* PWA(Progressive Web App).
* Landing Page with latest five post according to published date.
* List of posts page for showing all posts.
* Clickable Tag and filtering by tag.
* Disqus comments integration.
* Twitter profile and timeline integration.
* Card based cutting-edge design.

## Upcoming Features
* Search for posts
* Dark/Night mode
* Post category/tag showing on sidebar with filtering
* SEO friendly page
* Write markdown from this app for posts

## How to run on local machine?
* Fork this repository [Github Repo](https://github.com/iashraful/dev.to-client)
* Clone it from your fork
* Open `user-config.json` file and update according to your blog configuration. i.e:  
* * "dev__to_username" is you dev.to handle/username/login name.
* * "twitter_username" is your twitter username
* * "disqus_shortname" is disqus shorname or discuss comments url prefix.

* Run `$ npm install`
* Run `$ npm run serve`  
**Also you can try with the docker.**

## Deploy to VPS/any machine
* I have included the docker file already. So, you can try with docker.

#### Docker Process
* RUN `sudo docker build -t iashraful/dev.to-client .`
* RUN `sudo docker run -it -p 5000:80 --rm --name dev.to-client iashraful/dev.to-client`  
**You can customize the port if you need. I that case, you must need to allow the post for tcp/ip connection**

#### Traditional Process
* Run `$ npm install`
* Run `$ npm run build`
* Now tell your web server to serve from `dist/` directory.  
**You must remember to forward every request to `/index.html`. 
Because this app handles routing with [Vue Router](https://router.vuejs.org/).** 


## Resources
* [Github Repo](https://github.com/iashraful/dev.to-client)
* [Demo](https://dev-to-client.netlify.com/)

**Happy Blogging :-)**
11 Vue.js Lifecycle Hooks
Tags: vue, javascript, webdev
Published: 2019-10-14 10:10:05

Something that you absolutely need to know when you approach Vue.js for the first time is its **Lifecycle Hooks**.

You can go deep to start writing your JavaScript logic inside methods or computed properties and so on. Of course, I understand that when you are excited about learning a new technology you want to see it in action fast (I did exactly that btw ), but I guarantee you that understanding these Hooks will give you a strong foundation to learn this Javascript Framework.

_If you get confused with methods and computed properties when you start with Vue.js, I suggest you read [this article](https://medium.com/notonlycss/the-difference-between-computed-and-methods-in-vue-js-9cb05c59ed98)._

**The Vue instance**
The core of Vue.js is its instance. Every Vue application starts by creating one and it is an object that will help you to create your desired behavior.

The Vue instance contains different options[1]: data, props, template, methods, computed, watchers, lifecycles and much more.

As you can imagine the instance is responsible for different things, for example setting data observation, compiling the template, mounting the instance to the DOM, updating the DOM when data changes and others. I invite you to read the documentation here if you are interested to know more about all these arguments.

**The Vue lifecycle hooks**
The lifecycle hooks are functions that give you the opportunity to add code at specific stages.

To know the 11 Lifecycle Hooks continue to read the article on medium https://medium.com/notonlycss/11-vue-js-lifecycle-hooks-3c8251e1996a
Halfway Point: Hacktoberfest
Tags: devjournal, hacktoberfest
Published: 2019-10-15 14:19:37

While I wrote that title I heard the voice of my training app in my head… so that’s fun.

This month I’ve been doing more than normal and I honestly have no clue how I’m balancing it all. Last night I relaxed and watched Idiocracy and After and blogged a bit, neither took a ton of concentration which was exactly what I needed.

HACKTOBERFEST:
I am participating in Hacktoberfest this month. My plan was to do one the first couple days and then one each Saturday. Basically I’m one behind where I was planning to be at.

First Pull Request:

This was a super simple one just to get used to the process of doing a PR. There was good documentation and I basically just had to put in a new JavaScript object of a movie, emojis, etc.

Second Pull Request:

I had a goal to do something in C++ and since I’m just learning I decided to do one that was a HackerRank problem. I didn’t want people to just be able to copy the answer blindly so I also added in a couple comments about why the answer is what it is and why it isn’t as straightforward as I thought it’d be. I did one on a for loop and one on pointers.

I had only done pointers and then I was looking at PRs other people have put in and someone else had already done that. So note to myself (and others): LOOK AT THE PENDING PRs.

How's everyone else's Hacktoberfest going?

View full article here: http://www.jkimexploring.wordpress.com/2019/10/15/halfway-point-october/
Base API: Self Hosted!
Tags: baseapi, selfhosted, crystal, saas
Published: 2019-10-15 14:09:18

[Base API](https://www.base-api.io/) can now be self hosted 🎉

### How does it work?

Thanks to [Crystal](https://crystal-lang.org/), the end result is just a binary that you download and run on your own server (Linux for now, macOS coming soon).

### What is available?

You can create projects and use all of the same features as the online version with the same interface without any restrictions.

### What does it need to run?

You will need to configure:

* The database, which needs to be [PostgreSQL](https://www.postgresql.org/).

* The credentials for a [Mailgun](https://www.mailgun.com/) account to send emails (SMTP will be available soon).

* Optionally credentials for [AWS S3](https://aws.amazon.com/s3/) if you want to store files and images in the cloud, otherwise they will be saved locally.

------------------------------------------

### How to get it up and running?

1. Create an account and get a licence key from your account page:
  ![Account Page](https://res.cloudinary.com/drenther/image/upload/v1570940852/able-editor/Base_Account_mxysor.jpg)
  ![Licence Key](https://res.cloudinary.com/drenther/image/upload/v1570940857/able-editor/Base_License_Key_q88uja.jpg)

2. [Download](https://www.base-api.io/download) the binary and save it in a directory and make it runnable: `chmod +x base-latest-linux`

3. Create the configuration file in the same directory named `config.yml` with the following content (replaced with your credentials):

    ```yaml
   database_url: "postgres://postgres:postgres@localhost/base"
    files_path: "public/files"
    license: "l2vHT62y6qbB5hFv"
    mailgun_api_key: "FVn5k63OcsVUgA7T"
    mailgun_domain: "some.domain.com"
    s3_region: "eu-west-1"
    s3_bucket: "base"
    s3_secret: "8SXLTxMnaWnsfX7b"
    s3_key: "s6T5NULtt25jCUzV"
    log_level: "debug"
    admin_username: "admin"
    admin_password: "12345"
    ```

4. Run the migrations to create the tables in the database with the `./base-latest-linux migrate` command.

5. Start the server with the `./base-latest-linux —port 8080` command.

6. Navigate to [http://localhost:8080](http://localhost:8080) to see the dashboard.
  ![Status Page](https://res.cloudinary.com/drenther/image/upload/v1570941794/able-editor/Base_Status_rzpxbi.png)

7. That’s it you now have Base API running on your server and you can connect to it with any of the client libraries.

------------------------------------------

📻 Follow me for more Base API goodness in the near future.
Listing users in Linux
Tags: linux, beginners, tutorial
Published: 2019-10-15 13:58:51

---
title: Listing users in Linux
published: true
description: 
tags: #linux #beginners #tutorial
---

In this post, you will learn about listing users in Linux.
1 What file contains the list of the users on Linux?
2 List all users
3 List & sort users by name
4 Linux list users without password
5 List users by disk usage
6 List the currently logged users
7 Linux list of users who recently logged into the system
8 List users’ logins on a specific date or time
9 List all users in a group
10 List users with UID
11 List root users
12 Get the total number of users
13 List sudo users
14 List users who have SSH access
15 List users who have permissions to a file or directory
16 List locked (disabled) users
17 Conclusion

https://likegeeks.com/listing-users-in-linux/

Hope you like it.
Regards,
Massive Improvement of dbForge Studio for SQL Server 5.8 
Tags: sqlserver, database, schemacompare
Published: 2019-10-15 13:50:00

---
title: Massive Improvement of dbForge Studio for SQL Server 5.8 
published: true
description: Devart rolled out the next version of dbForge Studio for SQL Server, which in addition to a substantial redesign, got the new ‘Object Filter’ feature.  
tags: SQL Server, database, schema compare
---
*Devart rolled out the next version of dbForge Studio for SQL Server, which in addition to a substantial redesign, got the new ‘Object Filter’ feature.*

![dbForge Studio for SQL Server](https://blog.devart.com/wp-content/uploads/2019/10/new-fature-object-filter.png)

Devart, a recognized vendor of professional database management software for developers and DBAs, introduced a significant update to one of its key tools — [dbForge Studio for SQL Server, v5.8](https://www.devart.com/dbforge/sql/studio/). A powerful IDE for SQL Server management, administration, development, data reporting, and analysis gained massive improvements that users will definitely appreciate. 

The enhancement has affected mainly: data and schema comparison features, diffs management, and deployment. A complete list of improvements includes:

**Schema Compare and Sync**
- **Object Filter** — the new feature allows filtering objects right in Comparison Document. Applying advanced filters makes the analysis of schema comparison results more effective, informative, and bespoke;
- **Objects Text Diff Control (redesigned)** — the coloring model of diffs highlighting simplifies the analysis of schema comparison results;
- **Schema Comparison Report in HTML (redesigned)** — HTML reports became more informative: apart from information about objects,  they now include the actual script differences.
- **Generate Comparison Report Window (redesigned)**.

**Data Compare and Sync**
- **Data Compare Control (redesigned)** — viewing of exact data differences has become more smooth and clear: tabs of the grid became more informative with more crisp data differences highlighting;
- **Data Comparison Report in CSV (redesigned)** — now IDE generates several report files in CSV format.  One of them contains summary results, and the rest of the files contain specific data diffs info;
- **Data Comparison Report Window (redesigned)**.

**About Devart**

Devart is one of the leading developers of database tools and administration software, ALM solutions, data providers for various database servers, data integration and backup solutions. The company also implements Web and Mobile development projects.
For additional information about Devart, visit https://www.devart.com/
Daily Challenge #92 - Boggle Board
Tags: challenge
Published: 2019-10-15 13:40:22

---
title: Daily Challenge #92 - Boggle Board
published: true
series: Daily Challenge
description: Write a function that determines whether a string is a valid guess in a Boggle board
tags: challenge
---

Write a function that determines whether a string is a valid guess in a Boggle board, as per the rules of Boggle. A Boggle board is a 2D array of individual characters, e.g.:

`[ ["I","L","A","W"],
  ["B","N","G","E"],
  ["I","U","A","O"],
  ["A","S","R","L"] ]`

Valid guesses are strings that can be formed by connecting adjacent cells (horizontally, vertically, or diagonally) without re-using any previously used cells.

For example, in the above board `BINGO`, `LINGO`, and `ILNBIA` would all be valid guesses, while `BUNGIE`, `BINS`, and `SINUS` would not.

Your function should take two arguments (a 2D array and a string) and return true or false depending on whether the string is found in the array as per Boggle rules.

Test cases will provide various array and string sizes (squared arrays up to 150x150 and strings up to 150 uppercase letters). You do not have to check whether the string is a real word or not, only if it's a valid guess.


***
_This challenge comes from 747823 on [CodeWars](<https://codewars.com/>), who has licensed redistribution of this challenge under the [2-Clause BSD License](<https://opensource.org/licenses/BSD-2-Clause>)!_

_Want to propose a challenge idea for a future post?  Email **yo+challenge@dev.to** with your suggestions!_
2048 game remake
Tags: showdev, vue, gamedev, webdev
Published: 2019-10-15 13:26:52

Hello,

Me and my colleague/friend Rafaela Lucas(she's a UI designer) decided to make a remake of the game 2048 with Vue.js.
I did the logic and functionalities and Rafaela did the Design and css of the game.
Note: It's a progressive web app so you can install it on your smartphones.

Here is the game link:

https://play2048game.firebaseapp.com/



If you like it and want to see more projects, check out our Portfolios:

https://www.joaobairrada.com/
https://www.rafaelalucas.com/

Let us know what you think

Thank you,
The Noob CMS: Summary of Installation
Tags: noobcms, beginners, tutorial
Published: 2019-10-15 13:11:43

This is a summary of Installation for all to continue where we left. 

### How to Install
- Download http://www.wampserver.com/en/ or any other supported PHP 7+ and Install
- Go to http://localhost/phpmyadmin/index.php and Login with default credentials
  - Username: root
  - Password: **Blank**
  - ![](https://i.ibb.co/gm8VGDz/Image-067.png)
- Once logged in, Click on **Database** and then Create a New Database by the name of noob_db
  - ![](https://i.ibb.co/znXDWfR/Image-001.png)
- Now goto Import and click on Choose File and Select ./repo/db/noob_cms.sql.gz and Scroll down and click on Go
- You should successfully have imported the DB
  - ![](https://i.ibb.co/YW16psr/Image-002.png)
- Take your Favorite Editor and open ./repo/config/config.php and make sure the configuration matches
  - ![](https://i.ibb.co/VDMYBN6/Image-003.png)

{% github th3n00bc0d3r/noobcms%}

[Noob Index](https://dev.to/th3n00bc0d3r/noob-guides-index-4mne)
24 Git Interview Questions For Developers
Tags: git
Published: 2019-10-15 13:00:36

Git is a very popular version control tool in the software community. Almost every fortune 500+ organizations use Git. This contains basic to expert level Git interview questions that an interviewer definitely asks. These questionnaires will help to prepare for a job interview in a short time.

Often, these questions and concepts are used in everyday programming. But these are most helpful when an Interviewer is trying to test your deep knowledge of Git version control.

for more details about this article you can read this article:-
https://codersera.com/blog/24-git-interview-questions-for-developers/
Keeping Your Data Warehouse In Order - Episode 102
Published: 2019-10-15 12:53:29

<p>Managing a data warehouse can be challenging, especially when trying to maintain a common set of patterns. Dataform is a platform that helps you apply engineering principles to your data transformations and table definitions, including unit testing SQL scripts, defining repeatable pipelines, and adding metadata to your warehouse to improve your team's communication. In this episode CTO and co-founder of Dataform Lewis Hemens joins the show to explain his motivation for creating the platform and company, how it works under the covers, and how you can start using it today to get your data warehouse under control.</p><p><a href='https://www.dataengineeringpodcast.com/dataform-data-warehouse-management-episode-102/'>Listen Now!</a></p>
From Foodie to Techie, Nutrition and Coding
Published: 2019-10-15 10:58:40

A Nutritionist Coder: Getting from Newbie to FoodTechie
This year, as a nutritionist I was looking to enrich my resume, expand my skills set, and fuel my passion for technology. In the nutrition field, I keep encountering challenges dealing with food quality and food distribution. So, I seek out ways of creating solutions and one of the interests is using technology. I started Android Development as a challenge whereby I wanted to see if I can learn coding and try out one of my ideas.
As a beginner with no prior knowledge in coding, I began how most novices start: by searching online content and following video tutorials on YouTube. The issue with this method was that I kept 'jumping' from one page to the other with not definite outline. In addition, whenever I encountered problems in my code, I didn’t have anyone to ask or, as I learnt later, to help me with the debugging process. The result was that I had several unfinished projects on Android Studio and my motivation took a nose dive.
This trend wasn’t helping me very much and so I started looking for more curated content. I also realized that I learn best on a predetermined schedule. So after getting a simple outline on Java and Android Studio, I set a timetable and plan to get something done. 
This worked for a while but then I realized I need a higher level of motivation. At around May, I got to know of  the Google Associate Android Developer Scholarship with Andela Kenya and I applied for it. And I got accepted! The timeline was a bit tricky and I was able to follow the curated course content during commute to and from my attachment place. I attended the physical meet ups at Andela Learning Center religiously and engaged with fellow coders who offered guidance and helped me to debug faster.
Needless to say, over the last few months I have gotten from a novice in coding to a proficient level, from zooming out during conversations filled with 'code' lingo to actually participating in those conversations. 
Currently, am looking forward to doing a capstone project on PluralSight which will prepare me for the Google Associate Android Certification exam. Am also engaging on team challenges and learning best practices in code. I have also started learning Kotlin language by participating in the Kotlin Everywhere meetups  in Nairobi. 
One thing for sure is that at the end of the year, I will have added a new skill to my CV, made lots of new connections and be a fulfilled and happy lady. My gratitude goes out to everyone who has helped me get from zero in coding to the level am currently at.
Andrew's Adventures In Coderland
Published: 2019-10-15 12:52:36

<p>Software development is a unique profession in many ways, and it has given rise to its own subculture due to the unique sets of challenges that face developers. Andrew Smith is an author who is working on a book to share his experiences learning to program, and understand the impact that software is having on our world. In this episode he shares his thoughts on programmer culture, his experiences with Python and other language communities, and how learning to code has changed his views on the world. It was interesting getting an anthropological perspective from a relative newcomer to the world of software.</p><p><a href='https://www.pythonpodcast.com/adventures-in-coderland-episode-233/'>Listen Now!</a></p>
GraphQL/GraphCMS Cache Contingency
Tags: graphql, graphcms, graphqlcache
Published: 2019-10-15 12:43:34

I have several businesses that rely on a particular GraphQL endpoint. This endpoint is managed by a third party provider: https://graphcms.com/ (a Headless CMS that provides a CMS, and an API)

Along the way, I noticed that sometimes, the endpoints gets unreliable. Often, it's because GraphCMS infrastructure is failing due to their own provider failures (usually AWS).

They can't do much about AWS failure (kinda hard to do what they do, that's why we use them in the first place, right?) and they don't have a "failure mitigation" in place yet, **so I had to build one**. I basically built a cache failover on top of the GraphQL endpoint.

I built https://github.com/UnlyEd/GraphCMS-cache-boilerplate with GraphCMS in mind, only to figure out kinda later that it could be used for any GraphQL endpoint, independently of the provider. (self-hosted, SaaS, etc.)

It's basically a self-hosted service (using AWS Lambda/API GW). I invite you to take a look and let me know what you think, I believe it could be useful to many folks out there so it's released under MIT license :)
The Plight of junior software engineers in the current market.
Tags: beginners, career
Published: 2019-10-15 12:17:47

My current position as a junior software engineer at the firm I am working for was recently declared as potentially redundant given the changes in the market with regards to the declining demand for junior engineers. This got me thinking on ways I could grow and get myself out of the junior engineer category.

As a junior software engineer, there are several things you can do to give yourself the best possible chance to get hired in the current competitive landscape.

One way is to hone your self-learning techniques to make sure you can stay on top of the changing industry, and stay as attractive as possible to potential employers. This will better enable you to maintain a high-quality portfolio of work and side-projects to give companies a better idea of what your strengths are as a developer. Continuing to work on your skills is extremely important: don’t fall for the trap that after receiving your degree or certificate that you are ‘done’ with learning. In software development, and especially with web technologies, your skills will stagnate without regular training and practice.

You should also focus on the fundamentals to ensure that your skill set stays flexible and marketable for the long-term, and is not greatly affected by the short-term trends in technology. Having a good understanding of the fundamentals will also allow you to pick up new, trendy technology relatively quickly, because you will have an understanding of what the problem being solved is, and an appreciation for tools that solve it well.

Finally, don’t be a junior. The best way to increase your chances of getting a job is to have enough experience and projects under your belt that employers will recognize you as skilled and valuable. This can be tough, especially if you need to be hired soon after finishing your education. One way to accumulate practical experience, even as a junior, is to offer freelance services. Doing this will widen your understanding of the technologies used in the real world, as well as grow your people and communication skills.

Meanwhile, feel free to connect me to any available job openings 😃(Javascript/React redux TypeScript, Python /Django, Python/Flask, PostgreSQL)

Credits <a href="https://medium.com/swlh/the-plight-of-the-junior-software-developer-494ff1fc4392" />