teleren/devto huggingface dataset:
5 things to keep cybersecurity in check
Tags: cybersecurity, bestpractices, startup
Published: 2024-06-22 01:34:46

---
title: 5 things to keep cybersecurity in check
published: true
date: 2022-11-09 17:50:32 UTC
tags: cybersecurity,BestPractices,startup
canonical_url: https://guptadeepak.com/5-things-to-keep-cybersecurity-in-check/
---

 ![5 things to keep cybersecurity in check](https://images.unsplash.com/photo-1484480974693-6ca0a78fb36b?crop=entropy&cs=tinysrgb&fit=max&fm=jpg&ixid=MnwxMTc3M3wwfDF8c2VhcmNofDE3fHxjeWJlciUyMGNoZWNrbGlzdHxlbnwwfHx8fDE2Njc5NDM3NDI&ixlib=rb-4.0.3&q=80&w=2000)

I'm excited to share my new video: The 5 Things You Should Be Doing to Keep Your Cybersecurity in Check.

In this video, I'll walk you through the steps you need to take to ensure that your startup takes care of its cybersecurity.  
  
The video covers the following:  
► Categorizing your data  
► Implementing some basic cybersecurity measures  
► Creating an IT policy for your team  
► Doing team training  
► Selecting a third-party vendor  
  
Check the full video 🎬 below to learn more, and let me know what you think! 💡  
  
Thanks for watching, and don't forget to follow for more updates. 🔔⏰  
  
[#cybersecurity](https://www.linkedin.com/feed/hashtag/?keywords=cybersecurity&highlightedUpdateUrns=urn%3Ali%3Aactivity%3A6993962781544767488)[#data](https://www.linkedin.com/feed/hashtag/?keywords=data&highlightedUpdateUrns=urn%3Ali%3Aactivity%3A6993962781544767488)[#IT](https://www.linkedin.com/feed/hashtag/?keywords=it&highlightedUpdateUrns=urn%3Ali%3Aactivity%3A6993962781544767488)

<iframe width="200" height="150" src="https://www.youtube.com/embed/M2lnOce9Jvo?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen title="5 things you should be doing to keep your cybersecurity in check"></iframe>
Every Blog Needs a first post
Tags: newbie
Published: 2022-11-09 17:31:39

Every blog needs a new post. 

I have recently Switched to dev.to, and will use this in the future for my blog posts. 

It has a great api and markdown support - which is briliant

Here is to the future....


---

Photo by <a href="https://unsplash.com/@goumbik?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Lukas Blazek</a> on <a href="https://unsplash.com/photos/coffee-latte-near-white-wireless-keyboard-and-apple-earpods-on-the-table-photography-GnvurwJsKaY?utm_content=creditCopyText&utm_medium=referral&utm_source=unsplash">Unsplash</a>
Designing better developer interfaces (DI)
Published: 2022-11-09 17:28:02

Shaping tools for developers? Let's do it with usability in mind. After conducting over 100 interviews with developers about making dev tools easier to use, I've gained some insights. Check out my new article about designing better developer interfaces.

https://wix-ux.com/designing-better-developer-interfaces-aed0ea4c33a7?source=friends_link&sk=68802cffa55741aac841dfa1a70a4853
Open Source in the Web 3.0 world ~ Gitopia
Published: 2022-11-09 16:34:43

Hey folks, 
<img width="100%" style="width:100%" src="https://media.giphy.com/media/nfl59PMPNLKuK8v5LT/giphy.gif"> 

This article covers key insights from the **Whitepaper** of **Gitopia**.

The open source platforms like Github, Gitlab, BitBucket and many more, are Web2 centric. **Gitopia** reminds me of **Zootopia** (Anime movie) and the memes like - 

<img width="100%" style="width:100%" src="https://media.giphy.com/media/4URfklUToxk6A/giphy.gif"> 

**Gitopia** is a **de-centralized code hosting and collaboration platform**, that seems to redefine code sharing platforms, the Web3 way. 

Github and other Web 2.0 open source platforms, have the following shortcomings that prevent moving into the de-centralized world of Web 3.0 

1. The platforms have a monopoly as a large number of developers and Open source collaborators are using these platforms. 
2. These platforms are a Single point of failure as, if they suffer a catastrophic event, all developers will lose their access to their repositories and projects. 
3. These platforms have their own set of policies to which the communities have no direct say or influence. 
4. These platforms often censor the projects available on the platform under the influence of a Government organisation. 

### Features

**Gitopia** solves these issues by leveraging the blockchain technology. It has the following features -: 

1. Decentralized - Open Source communities and collaborators will have the right to decide the polices and future of Gitopia. 

2. No central authority to censor the data or projects available on the platform. The power will be in the hands of the users through a voting system. 

3. No Single point of failure with the usage of a decentralized network. 

4. Gitopia will provide permanent storage with the use of Blockchain. 

5. Repositories on Gitopia will be secured by public-key cryptography. 

### Technical insights 

- Gitopia main chain is built using **Cosmos-SDK**. 
- Gitopia chain will run on **delegated-Proof-of-Stake based Byzantine Fault Tolerant(BFT) Tendermint** consensus engine. 
- Gitopia will be integrated with **Cosmos Inter Blockchain Communication (IBC)** layer to provide interoperability with other chains. 
- The native Gitopia token is **$LORE** and the testnet token is **$TLORE**.
- **Redundant data storage** will be provided using **Arweave** to the users. 

Gitopia also incentivises Open Source using the $LORE token and provides actionable Open Source Licenses.  

**Gitopia Whitepaper** is available on the website [**Gitopia**](https://gitopia.com/).

That's all folks, Thanks for reading till here. Stay tuned for more learnings. 

Follow me on [Twitter](https://twitter.com/AdityaParjanya) for more tech content on ReactNative, Flutter and Web3.
gyp: No Xcode or CLT version detected!
Tags: macos, xcode, errors
Published: 2022-11-09 17:24:44

---
title: gyp: No Xcode or CLT version detected!
published: true
description: 
tags: macos, xcode, errors
# cover_image: https://direct_url_to_image.jpg
# Use a ratio of 100:42 for best results.
# published_at: 2022-11-09 17:22 +0000
---

```bash
gyp: No Xcode or CLT version detected!
```

First, delete the Xcode tools by using the below command.
sudo 

```bash
rm -rf $(xcode-select -print-path)
```

Now, install the Xcode by running this command.

```bash
xcode-select --install
```


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/69wwy30njw1p8idrq5yw.png)

SOURCE: https://reactgo.com/gyp-xcode-or-clt-version-detected/
Badge awarded
Published: 2022-11-09 17:20:40

Badge awarded for successful completion of the 2022 Hacktoberfest challenge by DEV Community.

By looking from this awards I get exited for doing more and from this type of award an spirit/motivation comes to do something new in technical field.

#hacktoberfest2022 #hacktoberfest #opensource #github #gitlab #experience #connections #share #devcommunity #awards #badge
Adding tests to my SSG
Published: 2022-11-09 16:57:09

This week i upgraded my SSG by adding testing so whenever i add features i can run the tests and see if my existing features still work as intended.

[755a190](https://github.com/P-DR0ZD/pdrozd-ssg/commit/755a190c581a4134f7a536cd98e73ec26986394b)

# What framework did I use for Testing

[unittest](https://docs.python.org/3/library/unittest.html)

Because my SSG is built with python i wanted to use python's built in testing framework unittest.

# How did i set it up

Setting it up wasn't difficult because it was built in I created a new folder for testing and importing unittest. Then i created a folder where i can store test text documents.

# What bugs did i find

I found that files that are empty break my SSG and caused it to crash so i added error checking so i would catch those errors then I made sure that my SSG still ran.

# Will i use testing in the future

I think I'll still use testing it was kinda a learning curve because i needed to think about how to break my project down into steps where i could test things individually
API EXAMPLE - Joomla! 4.x Web Services and Github GraphQL API
Tags: blog
Published: 2023-02-09 13:34:06

---
title: API EXAMPLE - Joomla! 4.x Web Services and Github GraphQL API
published: true
date: 2022-11-09 16:55:12 UTC
tags: Blog
canonical_url: https://alexandree.io/blog-joomla-specialist/joomla-4x-webservices-github-graphql
---

![](https://alexandree.io//images/behzad-ghaffarian-hello-unsplash_7dc86.jpg)

Hello Super Joomlers!  
  
Today we are playing with GraphQL. Mashing up Joomla! Web Services with the power of Giants like the Github GraphQL API.  
You can now do all that using a single self-contained php script in about 300loc.  
  
Here is the screenshot of the result:  

[Read More …](https://alexandree.io/blog-joomla-specialist/joomla-4x-webservices-github-graphql)
JavaScript Functions
Tags: javascript, functions, programming
Published: 2022-11-09 16:55:09

One of the core components of JavaScript are functions. A JavaScript function is a block of code created to perform a certain task. We can call JavaScript function how many times we want to reuse the code.

The code must accept input and return an output with an evident relationship between the input and the output in order to qualify as a function. A function must be defined someplace in the scope from which it will be called in order to be used.


_Function declarations_ 
a function declaration consists of the **function** keyword, followed by:

- The name of the function.
- A list of parameters to the function, enclosed in parentheses and separated by commas.
- The JavaScript statements that define the function, enclosed in curly brackets, { }.
- Inside the function, the arguments (the parameters) behave as local variables. 

Example of a function in JavaScript
// Function to compute the sum of x1 and x2
function sumFunction(x1, x2) {
  return x1 + x2;
}

The function sumFunction takes two parameters, called x1 and x2. The function consists of one statement that says to return the parameters of the function (that is, x1 and x2) are added together. The statement **return** specifies the value returned by the function.

Functions can also be created by a function expression, which can be  anonymous. For example, the function square could be been defined as:

const square = function (number) {
  return number * number;
}
const x = square(6); // x gets the value 36

However, a function expression may include a name. Providing a name allows the function to refer to itself. 

_Important_: Defining a function does not execute it. Defining it names the function and specifies what to do when the function is called (which is when the function actually performs the specified actions with the indicated parameters) 
- Functions must be in scope when they are called, but the function declaration can be hoisted(means when the declaration appears below the call of the code).

**Function scope**
From the explanation of the variable, we already know that variables defined inside a function cannot be accessed from anywhere outside the function, because the variable is defined only in the scope of the function. A function, however, has access to every variable and functions defined inside the defined scope.

Recursion is when the function refers to itself.

There are three ways for a function to refer to itself:
- The function's name
- arguments.callee
- An in-scope variable that refers to the function

Example with a loop.

let x = 0;
while (x < 10) { // "x < 10" is the loop condition
  // do stuff
  x++;
}
Unit testing the Luos Engine library
Tags: opensource, programming, devops, luos
Published: 2022-11-09 16:40:09

One of the Luos unit testers, Jerôme Galan tested the Luos Engine library with the PlatformIO Unity framework. 

⏩ Watch his [video](https://www.youtube.com/watch?v=xDddEFnhWXk) to learn how to increase your code quality overall

If you have been working on any projects using Luos (or not) and you want us to give them a platform, upload a video of your project to Youtube and send us the link via discord (channel #projects).
Find delegated methods in Ruby on Rails
Tags: rails, ruby
Published: 2022-11-09 16:39:30

I needed a way to find delegated methods in GitLab codebase for testing, so I came up with this.

```ruby
delegated = delegates(project, :ci_cd_settings)
```

```ruby
def delegates(fromobj, tosym)
  # Get map of delegated methods.

  # Rails doesn't maintain a table of delegated methods, so it needs to be
  # reconstructed by parsing methods source.
  regex = /^\s*delegate .*to: \s*:#{tosym}.*/mx

  delegated = {}
  fromobj.methods.each do |symname|
    method = fromobj.method(symname)
    next unless method.source_location

    next unless method.source =~ regex

    name = symname.to_s
    # Example for `Project.last.method("ci_opt_in_jwt").source``
    # "  delegate :opt_in_jwt, :opt_in_jwt=, to: :ci_cd_settings, prefix: :ci, allow_nil: true\n"
    prefix_match = method.source.match /prefix: \s+ :(\w+)/mx
    delegated[name] =
      if prefix_match
        name.delete_prefix("#{prefix_match[1]}_")
      else
        name
      end
  end
  delegated
end
```
Best extension in VSCode for DevOPs/Developers
Tags: vscode, webdev, devops, design
Published: 2022-11-09 16:35:56

Found this amazing extension [draw.io](url) in vscode editor.

Now you can create architecture diagrams/flowcharts alongside your code from the vscode itself.

## How to install?
1) Just add the **draw.io** extension in your vscode editor.

2) Create a file with the extension .drawio
   eg: test.drawio

3) Explore 🚀

## Features

1) Uses an offline version of Draw.io by default.
2) Multiple Draw.io themes are available.
3) Use Liveshare to collaboratively edit a diagram with 
   others.
4) Nodes/edges can be linked with code spans.
I'm creating a community for a war project (Ukraine)
Tags: python, opensource, career, community
Published: 2022-11-09 16:34:18

A few weeks ago, I made a post about my new program on aircraft detection in eastern Europe:

```
https://dev.to/mariuszmalek/how-to-help-ukraine-in-the-war-as-a-programmer-25m0
```

I decided to write a new post about creating a community of brave programmers.

I want to co-create a project with other people to be able to secure the citizens of Eastern Europe in some small way. I hope we can contribute something to the society.

Repository:
```
https://github.com/mariuszmalek/war-detection
```
Proxy API developer tool for test
Tags: api, proxy, scraping, devops
Published: 2022-11-09 16:16:51

Hey all, 

Are there any experienced scraping API’s tech-users (the tools like ScraperAPI, ScrapingBee, ScrapingBot, Zenrows, etc.)? Or just web scraping enthusiasts? I really need your help! 

My name is Alex, I am a scraping developer with a mission to build the best Proxy API tool out there (humble is not my way.)  So here is my project - ScrapeIN’  where I am trying to combine and automate the best practices for bypassing site protection and create all-in-one scraping infrastructure for any data engineer. 

I released the first MVP version of my Proxy API and want to make sure that it works as planned, so it would be awesome if you could help me out and test it for any issues and bugs. 

So to test my ScrapeIn you need to
1. Go [here](https://dashboard.scrapein.app/)
2. Register - it will allow you to use scraper for 14 days with 1000 credits. I can extend access on request if needed, just ping me here or in dms or by email. I don’t request credit card upon registration or anything, so don’t worry about the payment that supposedly should follow the trial😅
3. Look through our [API docs](https://dashboard.scrapein.app/docs) 
4. [Use](https://dashboard.scrapein.app/) the API key given to you for scraping any public data from the web.  
5. [Use](https://dashboard.scrapein.app/query-builder) visual CSS selectors mode in order to extract the necessary data from a site accurately. 
6. Take and submit a short questionnaire [Google form](https://forms.gle/vbEaerevcoDjFNNc6).  
7. Enjoy increased ScrapeIN’ account balance by 1000 free credits! 

I really appreciate any of your feedback and thoughts about ScrapeIN’. Don’t hesitate to share with me any of your feedback in DMs or at support@scrapein.app.
Laid Off Toolkit: best free tools to get hired
Tags: jobs, career, layoffs, tools
Published: 2022-11-09 16:15:02

My team created **[The Laid Off Toolkit](https://bit.ly/3G2pyZc)** to be a roundup of the best free tools/apps/sites to help job-seekers ahead of the holidays. 

Let me know if there are additional free resources I should include!

If you find it helpful, consider sharing it with friends, and **upvoting it on Product Hunt** to help more people find it. 

Thanks y'all!
Maximize Sum Of Array After K Negations
Tags: javascript, leetcode
Published: 2022-11-09 16:12:50

Given an integer array nums and an integer k, modify the array in the following way:

choose an index i and replace nums[i] with -nums[i].
You should apply this process exactly k times. You may choose the same index i multiple times.

Return the largest possible sum of the array after modifying it in this way.

 

Example 1:

Input: nums = [4,2,3], k = 1
Output: 5
Explanation: Choose index 1 and nums becomes [4,-2,3].

Example 2:

Input: nums = [3,-1,0,2], k = 3
Output: 6
Explanation: Choose indices (1, 2, 2) and nums becomes [3,1,0,2].

Example 3:

Input: nums = [2,-3,-1,5,-4], k = 2
Output: 13
Explanation: Choose indices (1, 4) and nums becomes [2,3,-1,5,4].
```js
/**
 * @param {number[]} nums
 * @param {number} k
 * @return {number}
 */
var largestSumAfterKNegations = function (nums, k) {
  let sortedNums = nums.sort((a, b) => a - b);

  let negative = sortedNums.filter((eachNum) => eachNum < 0);
  let positive = sortedNums.filter((eachNum) => eachNum >= 0);
  let index = 0;
  while (index < negative.length) {
    if (k > 0) {
      negative[index] = -1 * negative[index];
      k--;
    }
    if (k === 0) break;
    index++;
  }
  console.log(index, negative.length, k);
  if (index === negative.length && k > 0) {
    sortedNums = negative.concat(positive)?.sort((a, b) => a - b);
    if (k % 2 !== 0) {
      sortedNums[0] = -sortedNums[0];
    }
    return sortedNums?.reduce((acc, each) => acc + each, 0);
  } else {
    if (k % 2 !== 0) {
      positive[0] = -positive[0];
    }
    return negative.concat(positive)?.reduce((acc, each) => acc + each, 0);
  }
};

console.log(largestSumAfterKNegations([4, 2, 3], 1));

console.log(largestSumAfterKNegations([2, -3, -1, 5, -4], 2));

console.log(largestSumAfterKNegations([-8, 3, -5, -3, -5, -2], 6));

```
Tranh slogan văn phòng • Tranh gỗ treo tường trang trí độc đáo
Published: 2022-11-09 16:11:31

Xưởng tranh SANFACTORY chuyên gia công, sản xuất các loại [tranh slogan](https://sanfactory.vn/tranh-slogan-van-phong/), tranh tạo động lực theo yêu cầu với giá rẻ uy tín tại TP.HCM. Khác với tranh canvas slogan, tranh gỗ slogan được SẦN gia công cắt, khắc laser chữ trên nền gỗ MDF chống ẩm cao cấp, chất lượng. Phù hợp để treo trang trí cho nhiều không gian khác nhau, từ sang trọng, cao cấp đến thiết kế cổ điển, hoài niệm.

Với quy trình trọn gói cho mỗi đơn hàng, SAN đặt uy tín lên hàng tiên quyết với mong muốn niềm tin và sự hài lòng cho khách hàng lâu dài.
Luôn đặt tiêu chí chất lượng lên hàng đầu để mang đến cho khách hàng những sản phẩm có giá trị bền vững theo thời gian.
Chúng tôi luôn sẵn sàng lắng nghe những mong muốn của bạn để cho ra những sản phẩm tốt nhất, phù hợp nhất với nhu cầu của bạn
Chúng tôi luôn có những mức giá tối ưu nhất, phù hợp nhất cho ngân sách của bạn với các mức giá linh hoạt tiết kiệm tối đa chi phí.
How to Create a Custom Assets Folder in Angular
Tags: angular, typescript, javascript, webdev
Published: 2022-11-09 16:07:37

Every Angular app generated with [@angular/cli](https://angular.io/cli) comes bundled with an _assets_ folder located inside the _src_ directory. And any file or folder created inside the _assets_ folder becomes publicly accessible. However, your options are not limited to this folder. You can easily create more _assets_ like folders by adding their paths in the _angular.json_ file. Let's understand this in detail with an example.

Let's say I want to create another folder inside _src_ directory called **users** and add following json file to this folder.

```json
{
  "firstName": "John",
  "lastName": "Doe",
  "username": "rambo_was_real",
  "occupation": "Mall Santa"
}
```
We'll name the file `profile.json`.

Once you've created the folder and added the file, you need to make Angular aware of this folder.

This can be done by simply dropping following line of code in your _angular.json_ file under the _assets_ array key.


![Assets option inside angular.json](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/0k9jw0sh9v7p0cd5m9zz.png)

And that's it! After doing this you can simply restart your Angular application and try to access the file via the web browser. If you've done everything as expected, you'll see following output in the web browser.


![Accessing custom assets folder via web browser](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/jl7xh5j3b5tls0zn8d1u.png)

You can also query the _profile.json_ file using the HttpClient Service.

```javascript
this.http
  .get('/users/profile.json')
  .subscribe((response) => console.log(response));
```

I hope you enjoyed this post. In case you've any queries or feedback, feel free to drop a comment or reach out to me on Twitter [@harshalslimaye](https://twitter.com/harshalslimaye).

Also, I would like to recommend another article I've written which talks about the technique called [Virtual Scrolling in Angular](https://harshal.dev/how-to-implement-virtual-scroll-in-angular) which allows the developers to display subset of large lists within small viewports and change the subset data as user continues to scroll through the list.
High Customer Churn Cancer for SaaS Business
Tags: churn, startup, saas, churnfree
Published: 2022-11-09 16:03:46


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lug7da3o6w6uix0xji1y.png)

Most SaaS Owners are aware of the high customer churn problem with that 1 reason they are losing thousands of $ annually, which is destroying their businesses.

High churn is a problem for every business. Because Customers leave their service because of many reasons, popular ones are

- High Price
- Low Quality
- Poor Service
- No needed further
- Lack of tool knowledge
- Complicated process
- Extra charges

First, let’s do some calculations (fun!) to put this into perspective…

If you 1000 customers paying $100 per month, and your churn rate is 10%, that equates to a loss of $55,400 ARR.

And what if that was a per-seat price and your users purchased 5 license's on average, making your ARPU $500?

That accounts for an annual potential loss of $277k!!

That’s a pretty scary figure, right?

By reducing that 10% to 5%, you could recover $142k in annual revenues!

Now you got the point that SaaS business owners face a lot of loss due to this reason. If you want to grow your business, you first need to identify the root cause of your customer leaving your service. If you improve then it will help you out more. After this, you can use a customer retention tool to help you rest your customer's Churnfree.

This tool starts working when the user clicks on the cancellation button. It will start offering them the offers you mention; if any of the offers users get and still cancel the subscription, then it will get why you're leaving.

In this way, you have the reason why you left your product, or else you win the customer again. Enjoy your recursive revenue.

Churnfree can save up to 46% of churned requests.

Try https://churnfree.com/ free today for your Product growth!

No card is required to sign up!