teleren/devto huggingface dataset:
How do you fix Facebook not working on iPhone?
Tags: facebook
Published: 2020-08-04 05:16:51

Facebook and the iPhone are a combination that is very much in use these days. Facebook is one of the popular easy to connect social media platforms having billions of users. Almost all iPhone users have Facebook installed on their system. Though the app provides smooth functioning, it still shows some issues like <a href="https://contactemail.us/facebook-not-working-properly/">Facebook not loading properly on iPhone</a>. This guide is for all the iPhone users who have Facebook installed on their iPhone and face some problems with their Facebook account.

<h2>Common fixes for Facebook not working</h2>

1.	Quitting and re-launching the Facebook app
Swipe the Facebook app on your iPhone from the Apps Preview. Close the app. Now, wait for some time and re-launch the app on your iPhone. This method of closing and re-launching the Facebook app works for most of the Facebook users.

2. Checking for Facebook updates

Many times the installed apps on your iPhone stop working because they are not updated. Check for the latest version of your Facebook app on your iPhone and update it immediately. Once the Facebook app updates on your iPhone, check if the issue has been resolved. 

3.	Checking the internet or WiFi connection.

A bad internet connection restricts the Facebook app from working correctly on your iPhone. Facebook is a heavy app requiring a good internet connection. Thus, ensure that you are using a good WiFi or cellular network. You can also try switching the network on and off several times from your iPhone Settings to fix Facebook not working iPhone issues.

4.	Uninstall and reinstalling Facebook

If the Facebook tips mentioned above do not fix the Facebook issue, try deleting the Facebook app from your iPhone and then reinstall the app from the App Store. It is the most common trick that solves Facebook crashing issues.

5.	Clearing the website and data history.

If you are logging in to your Facebook account on a web browser, you must try clearing the website and history data. The piled-up cache not removed from the browser for a long duration creates problem while accessing Facebook. Kindly go to the “Settings” menu on your iPhone, open the browser. Click on the “Clear History and Website Data” option to fix this Facebook error.

6.	Restarting your iPhone device
If the Facebook issue is due to a technical glitch, restarting your iPhone might instantly fix it. Switch off and restart your iPhone after some time to check if the problem resolves.
These fixes mentioned above might help the iPhone users in fixing their Facebook problem. If you still face Facebook not loading properly problem, you can take the help of our experts from <a href="https://contactemail.us">Contactemail</a>.

Visit here for <a href="https://contactforservice.com/facebook-support/">Facebook Assistance</a>
sharedsecret - an AWS-native secret sharing service
Tags: aws, secret, encryption, share
Published: 2020-08-04 05:16:32

**Goal**
Create an end-to-end fully encrypted, publicly accessible secret storage tool

**Components**

 - AWS Code Commit (Ruby v2.7) - a fork of [OneTimeSecret](https://github.com/onetimesecret/onetimesecret) with additional features, more developed UX & mobile capabilities.
 - AWS Elastic Beanstalk (which includes EC2 instances deployed with boot-strap configurations defined in the beanstalk configuration)
 - AWS S3 (Terraform Remote State, misc. components)
 - AWS Elasticache (v3.2.10)
 - AWS ELB (Application Load Balancer)
 - AWS ACM (Amazon Certificate Manager)
 - AWS Route 53 (DNS Management)

**Deployment Model**
The goal of the deployment is to deploy all initial platform components through Terraform. Due to the complexity/work-exerted model for Elastic Beanstalk, those components may be deployed manually.

**Deployment Overview**
![secret_deplyoment](https://dev-to-uploads.s3.amazonaws.com/i/zoxnwxb0u1ehs5fhyfes.png)


**Feedback**
Looking for general feedback - not looking to monetize.
The Love for Sublime Text!
Tags: ruby, sublimetext, editor
Published: 2020-08-04 04:07:51

I have been an ardent fan of sublime text for the last 4 years. I have never considered any other IDE for ruby. Here's how I am able to work effectively using sublime text and why is it hard for someone like me to switch to any other IDEs.

###Quick Pros:
* Easy to set up 
* No learning curve
* Simple. Fast. (much like the success of WhatsApp)
* Hassle-free for beginners (just focus on one thing - code)


###Tools/Plugins that I use in Sublime:
1. Rubocop
2. Git Blame/Annotate 
3. Bracket Highlighter
4. Snippets (in-built)


###What I use 99% of the time:
1. `Cmd + P` - switching between files
2. `Cmd + R` - searching for a method in a file
3. `Cmd + Shift + F` - global search 

I am happy to delegate other activities to the terminal.
* Version Control - Terminal/ SourceTree 
* Debugging/ REPL/ Server - Terminal


After spending quite some time with Sublime Text, I started looking for some IDEs. These two caught my eye.
* VS Code
* RubyMine 

Both of these provides a complete package for development - code, commit, REPL, debug/server. 

They have added support for docker, reviewing PRs, configuring multiple build tasks. You never have to go out of it to do something.

Somehow I felt these overwhelming and never once I considered switching to any of these in the past 4 years.

**Reasons for hanging on to Sublime Text:**

1. Most of the time, at least 5 projects would be open in different windows, yet Chrome would be laughing at the RAM consumption of Sublime Text. 
To say, lightweight will be an understatement

2. No boot-time whatsoever. Opens in a flash

3. Strong muscle memory of key bindings (working with multiple cursors, swapping lines, find previous/next occurrence of a word)

3. The most important part - feel and comforts of using it


Now that I am considering it's time that I give a shot to either of VS Code or RubyMine. I will follow this up with whys and hows of migrating from Sublime Text. 


PS: Sublime Text, you have been a great friend!
How to Utilize Benchmarking in Ruby
Tags: benchmark, ruby, performance
Published: 2020-08-04 05:06:26

<h3>Overview</h3>
In this blog I'll be a sharing a short tutorial on how to test the execution time of your <a href="https://www.ruby-lang.org/en/">Ruby</a> code. It makes things a little easier since Ruby comes packed with a module in its standard library built for benchmarking. The module is named Benchmark and we can utilize with just one line of code.

<h3>Environment</h3>
Before we utilize the module, we need to require Benchmark in our ruby file.
``` require 'benchmark' ```

<h3>Basic Usage</h3>
The most basic usage of the Benchmark:

``` ruby
require 'benchmark'

Benchmark.measure { 
  # code
}
```
Let's add a short loop and output the result:

``` ruby
require 'benchmark'

puts Benchmark.measure { 
  for i in 0..50
    puts "Value of local variable is #{i}"
 end
}
```
Result:<br/>
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/xd9mal519aorc0t0swqu.png)

This result is ok but we're missing labels, and we're not comparing any methods to one another.

<h3>Advanced Usage</h3>
``` ruby
require 'benchmark'

n = 5000000
Benchmark.bm(20) do |x|
  x.report("for:")   { for i in 1..n; a = "1"; end }
  x.report("times:") { n.times do   ; a = "1"; end }
  x.report("upto:")  { 1.upto(n) do ; a = "1"; end }
end
```
Result:<br/>
![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/c22fip1yqpd6ecvzk52m.png)

In this example, the for loop had the quickest execution time. 

<h3>Conclusion</h3>
I never knew how easy it was to test out the performance of my code in Ruby. If you'd like to learn more about Benchmarking in Ruby, check out the <a href="https://ruby-doc.org/stdlib-2.5.3/libdoc/benchmark/rdoc/Benchmark.html">documentation</a>.
AZ-900 Notes: Azure App Services
Tags: azure, az900, certification
Published: 2020-08-04 05:03:45

# Azure App Service enables:
- To build and host web apps,
-  background jobs, 
- mobile backends, 
-  RESTful APIs in the programming language of your choice without managing infrastructure. 
- It offers automatic scaling and high availability.
- This platform as a service (PaaS) allows you to focus on the website and API logic while Azure handles the infrastructure to run and scale your web applications.

##  Costs
- Pay for resources used by app based on App Service Plan.
- free tier you can use to host small, low-traffic sites.

## Types of app services
- **Web Apps**: Includes full support for hosting web apps using ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP, or Python. 
- **API Apps**: you can build REST-based Web APIs using your choice of language and framework. You get full Swagger support, and the ability to package and publish your API in the Azure Marketplace. 
- **WebJobs**: WebJobs allows you to run a program (.exe, Java, PHP, Python, or Node.js) or script (.cmd, .bat, PowerShell, or Bash) in the same context as a web app, API app, or mobile app.
- **Mobile Apps**:  quickly build a back-end for iOS and Android apps. 
Store mobile app data in a cloud-based SQL database. 
Authenticate customers against common social providers such as MSA, Google, Twitter, and Facebook. 
Send push notifications. 
Execute custom back-end logic in C# or Node.js.
AZ-900 Notes:  Containers in Azure
Tags: azure, az900, certificate
Published: 2020-08-04 05:00:35

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/ckw87uqkg65k3l0gva0g.png)

A container is a modified runtime environment built on top of a host OS that executes your application.

Azure supports Docker containers (a standardized container model), and there are several ways to manage containers in Azure.
- Azure Container Instances (ACI)
- Azure Kubernetes Service (AKS)

## Azure Container Instances
- offers the fastest and simplest way to run a container in Azure
- It is a PaaS offering that allows you to upload your containers and execute them directly with automatic elastic scale.

## Azure Kubernetes Service
- The task of automating, managing, and interacting with a large number of containers is known as orchestration. 
- AKS is a complete orchestration service for containers with distributed architectures with multiple containers. 

Containers are often used to create solutions using a microservice architecture.
This architecture is where you break solutions into smaller, independent pieces. 

## What is Microservice?
Imagine you may split a website into 
a container hosting your front end, 
another hosting your back end, 
and a third for storage. 
This split allows you to separate portions of your app into logical sections that can be maintained, scaled, or updated independently.

## Migrating apps to containers
You can move existing applications to containers and run them within AKS. You can control access via integration with Azure Active Directory (Azure AD) and access Service Level Agreement (SLA)–backed Azure services, such as Azure Database for MySQL for any data needs, via Open Service Broker for Azure (OSBA).
The Blog Post about the Blog
Tags: blog, personalplog, status, meta
Published: 2020-08-10 12:15:13

---
title: The Blog Post about the Blog
published: true
date: 2020-08-04 05:00:00 UTC
tags: blog,personalplog,status,meta
canonical_url: https://jmoore53.com/blog/personal%20plog/status/meta/2020/08/04/the-blog-post-about-the-blog.html
---

Without getting too meta, this is the post about my blog as it stands and where I see the future of it going.

## Reasoning for the Meta

I was exploring my Matomo Instance recently and noticed over the past year I have had 800 page views on this site. While this is really quite a small number, I was starting to think about the future of this blog and starting to spread the word on it more for both feedback and to spread more information to those who want/need it.

I was thinking about mediums I can share these posts on and getting the word out on some of the current projects I am working on. I think it would be a great way to get more involved with the developer/sysadmin community and also spread information for anyone wanting to learn more.

## Current Blog

With the current blog as it stands, I create posts whenever I want about whatever I want. Nothing about this blog is a chore and I for the most part enjoy maintining this blog and writing these posts. Everything with this blog is easy. Netlify hosts it for free (shoutout netlify), DNS is configured for basically forever, and SSL on the site renews automatically. All 3 basic components to a blog are there. It’s everything I need right now to be perfect reference material for myself when I run into pesky recurring issues.

### Material

The material for the blog is about things I run into and the fixes/workarounds for the issues pertaining to infrasture, developing ruby/rails/python/whatever and also some around concepts I find interesting. I think this is partially why the material flows/ comes out easily for me. I am able to just dump fixes into posts and write about what I learned. As long as I continue to learn, the posts will continue to come. Whether good or bad, I am usually always documenting.

### Writing Style

The writing in these posts is very: _here’s the point, here’s why this works for me, if you want a more in depth explaination look up details on your own_ and also very _i wrote one draft of this post and here it is_

Unfortunately for the reader, I really don’t read these posts back to myself like a novel in any way. Everything is meant to be technical, but usable. Most of the posts don’t “flow” per se. They more or less just come out with whatever English makes sense to me at the time. Dare I even say, every post for the most part is slapped together in a cryptic way I am able to comprehend for when I run into the issue the next time it happens. _if it’s happened once, it’s bound to happen again_

This blog is mostly for my reference, but if you are able to take something away, then cheers.

## Community

I think feedback would be nice and I am all for writing back. This is mostly why I am going to start sharing these to a wider audience.

I love comments and questions and will always do my best to answer them!
AZ-900 Notes: Azure Virtual Machines
Tags: azure, az900, azurecertified
Published: 2020-08-04 04:55:40

Azure Virtual Machines (VMs) let you create and use virtual machines in the cloud. 
They provide infrastructure as a service (IaaS). 

You can create and provision a VM in minutes when you select a pre-configured VM image. 

An image is a template used to create a VM. These templates already include an OS and often other software, like development tools or web hosting environments.

## When to use virtual machines?
- During testing and development
- When running applications in the cloud. 
- When extending your datacenter to the cloud.
- During disaster recovery.

## Scaling VMs in Azure
- Availability sets
- Virtual Machine Scale Sets
- Azure Batch

## Availability sets
 VMs are put into different update domains. Update domains indicate groups of VMs and underlying physical hardware that can be rebooted at the same time. Update domains are a logical part of each data center and are implemented with software and logic.

The group of virtual machines that share common hardware are in the same fault domain. A fault domain is essentially a rack of servers. It provides the physical separation of your workload across different power, cooling, and network hardware that support the physical servers in the data center server racks. In the event the hardware that supports a server rack becomes unavailable, only that rack of servers is affected by the outage.

The group of virtual machines that share common hardware are in the same fault domain.

A planned maintenance event is when the underlying Azure fabric that hosts VMs is updated by Microsoft. A planned maintenance event is done to patch security vulnerabilities, improve performance, and add or update features.

Unplanned maintenance events involve a hardware failure in the data center, such as a power outage or disk failure. VMs that are part of an availability set automatically switch to a working physical server so the VM continues to run.


![3-availability-sets.png](https://cdn.hashnode.com/res/hashnode/image/upload/v1596500049912/R_gtgS6BH.png)

With an availability set, you get:
- Up to **three** fault domains that each have a server rack with dedicated power and network resources
- **Five** logical update domains which then can be increased to a maximum of 20

## Virtual machine scale sets

Azure Virtual Machine Scale Sets let you create and manage a group of identical, load balanced VMs.
Scale sets allow you to centrally manage, configure, and update a large number of VMs in minutes to provide highly available applications.
The number of VM instances can automatically increase or decrease in response to demand or a defined schedule

## Azure Batch
Azure Batch enables large-scale job scheduling and compute management with the ability to scale to tens, hundreds, or thousands of VMs.

When you're ready to run a job, Batch does the following:
- Starts a pool of compute VMs for you
- Installs applications and staging data
- Runs jobs with as many tasks as you have
- Identifies failures
- Requeues work
- Scales down the pool as work completes
Keeping your sites fast with regular performance tests
Tags: webperf, webdev
Published: 2020-08-04 04:40:26

---
title: Keeping your sites fast with regular performance tests
published: true
date: "2020-08-04T04:40:02.006Z"
tags: ['webperf','webdev']
canonical_url: https://maxrozen.com/keep-site-fast-regular-performance-tests/
cover_image: https://dev-to-uploads.s3.amazonaws.com/i/tvsi4zvyv2dg17q6h5bm.jpg
---

Do you have clients, or stakeholders asking about improving their site performance, or wondering why their site seems to have gotten slower over time?

It happens to everyone: you deliver a fast website from the start, but then over time you get feature request after feature request, deadlines get rushed in, and the next thing you know you’ve got a client asking why some pages are taking up to ten seconds to load.

It doesn’t have to be this way.

It’s actually a simple fix: regularly check your site speed.

There are several manual tools you can use for free:

- [WebPageTest](https://webpagetest.org/)
- [Google PageSpeed Insights](https://developers.google.com/speed/pagespeed/insights/) or [Google Lighthouse](https://developers.google.com/web/tools/lighthouse)

**Pro tip:** Export the numbers, and use Excel or Google Sheets to graph your performance over time.

Once you start checking your site speed daily, it becomes easier to notice your performance slipping over time.

(This is an article posted to my blog at maxrozen.com. You can read it online by [clicking here](https://maxrozen.com/keep-site-fast-regular-performance-tests/).)
#100DaysOfCode challenge!
Tags: computerscience, challenge, java, 100daysofcode
Published: 2020-08-04 04:07:10

# 🧐 what is the #100DaysOfCode challenge? 
It is a challenge that you take up for the next 100 days where you follow the 2 simple rules below.
1. Code for a minimum of one hour a day.
2. Tweet your progress with the hashtag #100DaysofCode.

# 🤔 Who can take up this challenge?
To be short and precise, anyone who wants to learn to code/ improve their coding skills. In this challenge, you may learn any programming language, work on a project, or even read books and code. The only thing to be kept in mind is that, make sure you are learning and gaining something every day for the next 100 days.

# ❓ Why did I take up this challenge?
I started studying Datastructures and Algorithms 2 months back but eventually lost my motivation. I wanted something that would give me the push every day to sit and learn. 

# 👨🏻‍💻 Why tweet your progress?
Twitter has an amazing community for software developers just like the DEV community. People are friendly and welcoming and you can easily find like-minded people.

{% twitter 1289045404567261187 %}


It's been four days since I started this challenge and have had great encouragement from the community. Hope to come back after 100 days and update you all about my learnings from those 100 days. Wish me luck. 🤞🏽

# 🔰 Know more about the challenge:
You can learn more about the challenge from the [official website](https://www.100daysofcode.com/).
Keep learning! Keep coding! 💖

#  🎉 Update:

I have completed the challenge successfully!
Definitely was not easy to be consistent at the beginning, but eventually fell in love with the community support.
Complexity & Big0 notation
Tags: codenewbie, complexity, algorithms, 100daysofcode
Published: 2020-08-04 04:04:26

![Alt Text](https://dev-to-uploads.s3.amazonaws.com/i/9fl3fwz1j1304nzlfk0d.png)

When we talk about complexity and evaluate algorithm problems, we usually talk about two things: 
1. **Time Complexity** 
 - Deals with how efficient or fast an algorithm is. 
2. **Space Complexity** 
 - Deals with how much space or memory it will require. 

Complexity is always related to the input, more importantly, the size of the input. 

for example: 
- **O(n)**: Linear
```
input= [1,2,3,4,5,6,7,8,9,10]

function countNum(){
let counter = 0
  for (let i = 0; i < input.length; i++){
	console.log(counter++)
  }

}

countNum(input)
//output:
0
1
2
3
4
5
6
7
8
9
```

In this example, when we talk about time complexity, we are actually talking about the number of operations. Since the number of input is 10, the number of operations will also be 10. If you increase the number of elements in the array, the number of operations will also increase. It is therefore 1:1 relation. We call this Big O(n), where n is the number of elements in the given array, and since it is 1:1 relation we call this linear.

- **O(n^2)**: Quadratic
```
input= [1,2,3,4,5,6,7,8,9,10]

function countNum(){
let counter = 0
  for (let i = 0; i < input.length; i++){
    for(let j = 0; j < input.length; j++){
      console.log(counter++)
    }
  }

}

countNum(input)//
Check the console.log, you will see 
the operation has increased by 10folds
```
In this example, the number of operations is growing faster than the input. We have a nested loop, each loop has a time complexity of O(n), so we multiply the time like so: O(n) * O(n) = O(n^2). Note: We don't really focus on the coefficients, all we care about is the power. 

- **O(logn)** Logarithmic

It is the opposite of exponential growth. For example in binary search the input is sorted and split into two, where one half is discarded depending on the condition and another half is being checked. This saves time complexity and considered the fastest of solving an algorithm problem after O(1).

- **O(1)** Constant

Accessing the array index and not looking up the value. Just accessing the index directly. Then push and pop in a [Stack](https://www.geeksforgeeks.org/stack-data-structure-introduction-program/) is also constant. Removing and inserting from a [Queue](https://www.tutorialspoint.com/data_structures_algorithms/dsa_queue.htm) is considered to have O(1) complexity. 

Happy Coding 😄
SQL – ngôn ngữ tuyệt vời để bạn thao tác với các cơ sở dữ liệu.
Tags: sql
Published: 2020-08-04 03:59:15

SQL (viết tắt của cụm từ Structured Query Language – ngôn ngữ truy vấn có cấu trúc) là một ngôn ngữ tiêu chuẩn dùng để thực hiện thao tác lưu trữ và truy xuất dữ liệu lưu trữ trong một cơ sở dữ liệu quan hệ (relational database).

SQL được tiêu chuẩn hóa bởi ANSI (American National Standards Institute) – Viện tiêu chuẩn quốc gia Hoa Kỳ. Hiện nay, SQL được coi là ngôn ngữ phổ biến nhất trong các RDBMS (hệ quản trị cơ sở dữ liệu quan hệ) của các công ty lớn về công nghệ. Tất cả RDBMS như MySQL, Oracle, MS Access, Sybase, Informix, Postgres và SQL Server đều sử dụng SQL như là ngôn ngữ cơ sở dữ liệu chuẩn.
NHỮNG ĐIỀU BẠN CẦN BIẾT VỀ NGÔN NGỮ LẬP TRÌNH SCALA
Tags: ngonngulaptrinhscala
Published: 2020-08-04 03:36:25

Scala là một ngôn ngữ sâu săc và bạn cần phải dành rất nhiều thời gian để tìm hiểu và giải đáp nó. Sự thú vị của Scala không nằm trong những bài giảng, những tài liệu bạn đọc mà chính là cách bạn đang thực hiện nó. Điều gì khiến Scala thú vị và khác với các ngôn ngữ lập trình khác? Sau đây là những điều bạn cần biết về ngôn ngữ lập trình Scala.