teleren/devto huggingface dataset:
RAD Studio 10.3 Rio Support in Updated SecureBridge by Devart
Tags: software, security, development, securitysolution
Published: 2018-12-17 11:31:53

---
title: RAD Studio 10.3 Rio Support in Updated SecureBridge by Devart

published: True
description: Devart has released a new version of SecureBridge, which includes support for RAD Studio 10.3 Rio, TLS 1.3 and WebSocket protocols and other significant features.
tags: software, security, development, security solution
---

Devart, a recognized vendor of professional database tools for developers and DBAs, has released a new version of SecureBridge. This product can be a perfect solution when it comes to data protection in an untrusted network while developing apps in Delphi, C++Builder, and Lazarus.

An update of SecureBridge components delivers such new features as:

*Support for RAD Studio 10.3 Rio
*Support for the TLS 1.3 protocol 
*Support for the WebSocket protocol by the TScWebSocketClient component 
*Support for Elliptic-Curve keys and certificates
*Support for ECDSA algorithm for TLS/SSL protocol
*Support for GCM encryption mode
*Support for Lazarus 1.8.4
*Security for SSL client is significantly improved
*The TScUser.SSHChannelPermissions property to manage available user permissions is added
*The interface for the OnData, BeforeWriteData, and AfterWriteData events in the *TScSFTPClient component is changed


SecureBridge implements a variety of secure data transmission protocols, such as SSH, SFTP, SSL, FTPS, HTTPS, WebSocket to prevent data interception or modification in an untrusted network when developing applications in Delphi, C++Builder, and Lazarus.

Learn more about SecureBridge at https://www.devart.com/sbridge/

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.  

Learn more about Devart at https://www.devart.com.
TypeScript/JavaScript Class with Closure
Tags: javascript, typescript, discuss
Published: 2018-12-17 11:26:29

---
title: TypeScript/JavaScript Class with Closure
published: true
description: TypeScript/JavaScript class with closure
tags: javascript, typescript, discuss
---

Classes are nothing but functions, and creation of classes can be bound to a closure in an interesting way, while building I needed to attach a closure with class. And to my surprise it did work correctly.

```typescript

function ClassWithClosure(parent) {
   return class ClassWith {

       constructor(x) {
          this.x = x;
       }

       compute() {
          return this.x + parent;
       }
   };
}


var ClassWith2 = ClassWithClosure(2);
var ClassWith3 = ClassWithClosure(3);

var cw2 = new ClassWith2(2);
var cw3 = new ClassWith3(2);


cw2.compute(); // 4
cw3.compute(); // 5

```

Basically it works as `class` is simply a function constructor which is a function which can easily hold any closure.

```javascript
function ClassWithClosure(parent) {

   function ClassWith(x) {
      this.x = x;
   }

   ClassWith.prototype.compute = function() {
      return this.x + parent;
   }

   return ClassWith;

}

```

> Note this is not same as static, static variable is constant for every new instance.

This is specifically useful when you want to create nested classes like Java which can not exist without parent.

```typescript
class Parent {

    get childClass(): BaseClass {
        const parent = this;

        // wow nested class !!
        return class Child extends BaseClass {
            get parent(): Parent {
                return parent;
            }
        } 
    }

}

const p1 = new Parent();
const p2 = new Parent();

const c1 = new p1.childClass(); // of type BaseClass
const c2 = new p1.childClass(); // of type BaseClass

c1 === c2 // false;
c1.parent === c2.parent// true
```

Here, you cannot create a `childClass` without parent.
Top 25 Online Business Tools Used by Entrepreneurs in 2018
Tags: businesstools, onlinebusiness
Published: 2018-12-17 10:00:39

---
title: Top 25 Online Business Tools Used by Entrepreneurs in 2018
published: True    
description: Today’s highly competitive business world throws many challenges to entrepreneurs.
tags: business tools, online business
---
<img src="https://thepracticaldev.s3.amazonaws.com/i/idaxarnk6tqaf9wbbofz.png" alt="online business tools"></a>

But starting a new venture and making it successful is not everyone’s cup of tea. Today’s highly competitive business world throws many challenges to entrepreneurs. We have several tools out there to help us with this. we have amazing online tools available to boost sales and productivity. The tools can also help app development companies in attracting potential investors and customers. Let’s talk about them in detail.

Hootsuite is probably one of the first names people list when considering social media management. A logo maker is a graphic design tool that helps companies to create unique and creative logos on their own. CodePen has launched its own IDE (Integrated Development Environment) called CodePen Projects. It allows you to build websites within a browser. To know more about these tools, <a href="https://www.nimblechapps.com/business/online-business-tools">read the article here</a>.
Save $698 heres how
Tags: ide, gui, editor, jetbrains
Published: 2018-12-17 08:16:06

---
title: Save $698 heres how
published: true
description: Now save $698 for JETBRAINS editor
cover_image: https://res.cloudinary.com/programmmerrushikeshcloud/image/upload/v1545034523/dev.to/jetbrains.png
tags: ide, gui, editor, jetbrains
series: Editors for developer
---

We all developers are familier with many of the editors or IDE's. But at different projects or timeline we need to migrate among many editors, most common are free editors but some are most costy like JETBRAINS. 

Now Github Students Pack include JETBRAINS ide with IntelliJ Idea and PyCharm

**How to get ?**

Signup for github students pack and prove your valid student identity, and it also contains more tools, like .me domain with NameCheap which saves $18.

[Click here to avail](https://education.github.com/pack)
I need YOU to tell me a DDD Success Story!
Tags: ddd, success, discuss
Published: 2018-12-17 08:00:42

---
title: I need YOU to tell me a DDD Success Story!
published: true
cover_image: https://thepracticaldev.s3.amazonaws.com/i/jk0hx8sda6i3fwvph5th.jpg
description: I'm interested on hearing success stories of implementing DDD
tags: DDD, success, discuss
---

Hi,
In the last few years I've got very excited about DDD (Domain Driven Design).

It seems to me like the (only) way that complex business domain software should be built.

So I'm investing time in learning it.

I would really appreciate it if you could tell me about success stories regarding implementing DDD.
Deploy your Slate doc tool in Github in 1 minute
Tags: slate, doc
Published: 2018-12-17 03:14:33

---
title: Deploy your Slate doc tool in Github in 1 minute
published: true
description: 
tags: slate, doc
cover_image: https://thepracticaldev.s3.amazonaws.com/i/wxm6xnewb1gxw4aojnpo.png
---

My sample: https://chenge.github.io/slate/

![](https://thepracticaldev.s3.amazonaws.com/i/wxm6xnewb1gxw4aojnpo.png)

Publishing Your Docs to GitHub Pages

Publishing your API documentation couldn't be more simple.

    Make sure you're working on a fork in your own account, not our original repo: git remote show origin.
    Commit your changes to the markdown source: git commit -a -m "Update index.md"
    Push the markdown source changes to GitHub: git push
    Run ./deploy.sh
Swap two integers in 'C' programming Without using third variable
Tags: cprogram, c, clanguage, swap
Published: 2018-12-17 06:50:57

---
title: Swap two integers in 'C' programming Without using third variable
published: true
description: Swap two integers in 'C' programming using third variable
tags: c program, c, c language, swap
cover_image: https://res.cloudinary.com/programmmerrushikeshcloud/image/upload/v1545029420/dev.to/c-swap-NOnew-var.png
series: C programming
---

###C program to swap two integers without using third variable

{% gist https://gist.github.com/programmerrush/9196c7fcfe3a18df1b53890d4d1f8c92 %}
Swap two integers in 'C' programming
Tags: cprogram, c, clanguage, swap
Published: 2018-12-17 06:36:51

---
title: Swap two integers in 'C' programming
published: true
description: Swap two integers in 'C' programming using third variable
tags: c program, c, c language, swap
cover_image: https://res.cloudinary.com/programmmerrushikeshcloud/image/upload/v1545028541/dev.to/c-swap-new-var.png
series: C programming
---

###C program to swap two integers using third variable

{% gist https://gist.github.com/programmerrush/33c1162fb2872bfbcdd9334988cb2f20 %}
AoC Day 17: Reservoir Research
Tags: adventofcode, discuss
Published: 2018-12-17 05:46:43

---
title: "AoC Day 17: Reservoir Research"
published: true
description: "Day 17: We're simulating (sort of) ground-water flow through sand and clay."
cover_image: https://thepracticaldev.s3.amazonaws.com/i/xsoqv3ozgpj22oyec69l.png
tags: adventofcode, discuss
series: Advent of Code 
---

Only 8 more days of Advent!  On [Day 17](https://adventofcode.com/2018/day/17), we've got some water that is flowing down in the ground through sand and around clay to create reservoirs.

It's always interesting to me when they want us to model some sort of physical scenario.  The purely code-based algorithms are neat, but things like mine carts and water flow are extra interesting.

Good luck!
Build Instagram by Ruby on Rails 
Tags: ruby, rails
Published: 2018-12-17 04:55:16

---
title: Build Instagram by Ruby on Rails 
published: true
description: Learn Ruby on Rails by building Instagram application
tags: #ruby #rails #rubyonrails
---

#What’ll you learn after complete this project?
- How to start a new Rails application?
- Design System from Craft
- Understanding MVC (Model — View — Controller) architecture
- Model: Active Record migration, validation, callback, association, and query interface
- View: Layout, Partial and Form helpers
- Controller: Actions, Strong Parameters
- Rails Routing
- Active Storage to upload files
- Using Bootstrap, Devise, Kaminari gem in Rails application

#Table of Contents:

- Part 1: https://medium.com/luanotes/build-instagram-by-ruby-on-rails-part-1-fef7837ee399

- Part 2: https://medium.com/luanotes/build-instagram-by-ruby-on-rails-part-2-d70b44f5c7e6

- Part 3: https://medium.com/luanotes/build-instagram-by-ruby-on-rails-part-3-2cb65dca46d7

#Full code on Github: 
https://github.com/thanhluanuit/instuigram
I created a game - part 2 [Löve2d]
Tags: lua, game, ai, löve2d
Published: 2018-12-17 04:52:59

---
title: I created a game - part 2 [Löve2d]
published: true
description: We look into how the player character works and also how the enemy AI works.
tags: Lua, game, AI, löve2d
---

{% youtube endMfHEPRCc %}
Awesome PHP Security 🕶🐘🔐
Tags: showdev, php, security, githunt
Published: 2018-12-17 04:27:20

---
title: Awesome PHP Security 🕶🐘🔐
published: true
description: An awesome list of security-related resources for PHP
tags: #showdev, #php, #security, #githunt
cover_image: https://thepracticaldev.s3.amazonaws.com/i/6m9bc6uync0ldb3varli.png
---

PHP is still a very popular and widely used language. There are a lot of great security tools and resources available for PHP that are scattered all over the place.

For this reason, I've compiled a curated list of **awesome-php-security** resources here:

{% github https://github.com/guardrailsio/awesome-php-security %}

Did I miss anything? Let me know in the comments.

And, please leave a like (or ⭐ the repo) if you find it useful.
Have any useful Python functions? Contribute them to Quilt!
Tags: python
Published: 2018-12-17 04:21:48

---
title: Have any useful Python functions? Contribute them to Quilt!
published: true
description: 
tags: python
---

Do you have any useful Python functions? Consider contributing them to [Quilt](https://github.com/Richienb/quilt/blob/master/src/quilt_lang/__init__.py)!
Effective Python API testing using Django and Patch
Tags: programming, python, testing
Published: 2019-04-18 19:18:20

---
title: Effective Python API testing using Django and Patch
published: true
tags: Programming,programming,python,testing
canonical_url: https://shaneoneill.io/2018/12/17/effective-python-api-testing-using-django-and-patch/
---

Today I would like to offer a brief showcase on how to effectively test a Django API. Essentially, what we want to accomplish is the ability to test and control how our applications handle specific responses from external web APIs. A program might make calls to several different APIs like Reddit’s or Google’s, and we want to capture these responses under test. More importantly, in a way that our tests can pass every time regardless of the status of the APIs we consume.

## How?

By using Patch.

Patch is a decorator in the library `unittest.mock`. It allows us to replace attributes in our program with _mock_ objects and make assertions on how our program with behave. Let’s take a look.

Here we have a simple Django API generated using my [project starter](https://shaneoneill.io/starters/). It makes a query to Reddit’s API for information, and returns a simple JSON payload to the client.

![](https://shaneoneill.io/wp-content/uploads/2018/12/view-1-1024x545.png)

And of course, a corresponding test:

![](https://shaneoneill.io/wp-content/uploads/2018/12/tests_before-1024x391.png)

But wait- what if Reddit’s API is down? Our test will fail. Unit tests should never fail because of someone else’s application. They should always pass regardless of the status of other systems. We also cannot reliably capture both (1) Reddit is ok, and (2) Reddit is down. For this, we need to use Patch to usurp our call to to Reddit’s API with a mock function.

Let’s rewrite our test using Patch:

![](https://shaneoneill.io/wp-content/uploads/2018/12/2-test-no-lambda-2-1024x799.png)

We now will never fail due to an external system not behaving because regardless of the real status, our view will always receive exactly what we want to test.

We can improve the readability and organization of our mocks using the `lambda` keyword. Its not often I find an appropriate use of `lambda` so it’s worth highlighting. Here are the final tests rewritten:

![](https://shaneoneill.io/wp-content/uploads/2018/12/2-test-lambda-1-1024x569.png)

## Let’s Summarize  

We want to capture our API responses under test. So we used unittest. However, sometimes our API is dependent on other systems, causing a dependence and a potential to fail intermittently. To solve this issue, we use patch. Patch allows us to usurp the underlying functions, and implement our own test functions. Then, we used the lambda keyword to define our mocks inline for better readability.

Thanks for reading and Happy Hacking!
Flow & Function Together – CS Advent
Tags: development, cadvent, flow, function
Published: 2022-06-15 17:26:13

---
title: Flow & Function Together – CS Advent
published: true
date: 2018-12-17 00:19:00 UTC
tags: Development,CAdvent,flow,function
canonical_url: https://barretblake.dev/2018/12/flow-function-together-cs-advent/?utm_source=rss&utm_medium=rss&utm_campaign=flow-function-together-cs-advent
---

For this year's CS Advent post, I am going to continue my posts about using Microsoft Flow to make our lives easier. This time, we're adding in some Azure Functions as well. In a previous post, I covered creating a Flow that an attendee to a conference might create to watch for tweets that they might want to re-tweet. This time, we want to take on the role of conference organizers who want to watch the flow of tweets for how positive or negative people feel about our conference.

The post [Flow & Function Together – CS Advent](https://barretblake.dev/2018/12/flow-function-together-cs-advent/) first appeared on [Barret Codes](https://barretblake.dev).
Automating checking your Drupal's updates with Pantheon multidev
Tags: drupal, pantheon, updates, wordpress
Published: 2018-12-16 23:38:26

---
title: Automating checking your Drupal's updates with Pantheon multidev
published: true
description: Drupal updates can be very different. Some of them -- easy patches that you just roll out and forget. Some of them -- break your site. Tricky part is you never know how updates will behave on your site until you actually tried them out.
tags: drupal, pantheon, updates, wordpress
---
Drupal updates can be very different. Some of them -- easy patches that you just roll out and forget. Some of them -- break your site. Tricky part is you never know how updates will behave on your site until you actually tried them out.

This is why it is very tricky to give estimates to clients how long it is going to take. They usually do not appreciate answer 1 to 20 hours depending on some random facts.

In this way rolling out updates got delayed and delayed. And then we get to situations after half a year or a year that we know for sure site will be broken after updates. And now hero time begins.

Would it be nice if site would tell you not only the fact that it needs updates but also if it is going to break or not after rolling them out.

Nowadays, thanks to Pantheon's multidev, it is technically possible to automate checking how your updates will behave on the site.

Main idea is to regularly check updates (using drush command) then if updates are found create a separate environment and roll updates there. Afterward to ensure that they didn't break the site (at least visually) we could run some visual regression testing. So in result we have way more predictable answer about "how much efforts it will take to roll updates out".

![Updates diagram](https://downloads.intercomcdn.com/i/o/91467034/b5b204b06ad8abbb973e55f6/diffy-autoupdates.jpg)

Here is a full article tutorial about how to set it up http://docs.diffy.website/tutorials/put-your-sites-updates-on-autopilot-with-pantheon-multidev-and-visual-testing.

For sure fixing smaller updates is much easier than fixing big break after year of delays.
3 Tips To Create A Local Business Website
Tags: localbusiness, creatingwebsite
Published: 2018-12-16 20:48:56

---
title: 3 Tips To Create A Local Business Website
published: true
description: my 3 tips to create a great local business website based on my experience
tags: local business, creating website
---

I started a local business website a 6-months ago, and start thinking of the design, code, and content,.. then I sink in thinking of SEO and content marketing as I starting to type my first line of code there..

I made some mistakes, then I fix the problems,.. and I earned some experience which I want to show to you now! LET'S START!

I created a [UPVC website](https://www.pvcegypt.com/ "PVC Egypt Company") for local business in Egypt, and and another local business website on Saudi Arabia about [pest control & cleaning company](https://www.zahratelwadi.com/).

Here are the tips I want to give you!

## #1 Focus On User Experience (UX)
User Experience is a great ranking factor in Google search engine, and it is a great emotional way to attract your visitor to be a customer. It helps in ranking, SEO, sales,.. and everything. But it is tricky..

It is not straight forward set of instruction! But the best way to achieve a great UX is to test it on yourself. Make changes as if you are the visitor/customer! then improve your site UX over time! that's what I frequently make on [my own tech blog](https://www.abanoubhanna.com/2018/11/theme-update.html).

## #2 Better Quality & Less Quantity
Everybody wants to rank first on Google search results but the best will actually rank!

Yes, the best! not who frequently publishes.. not who has too many topic on his website/blog..

Do not create 500 blog posts! Just create a 7 great blog posts and promote them everywhere!

Those 7 great blog posts will out rank every other posts because you will include all needed information in details in your post by focusing on user experience, including some media to explain your content more by infographics, images, and videos.

Create every blog post for you -pretending you are the visitor- try to convince yourself and simplify information by illustrations.

## #3 Mobile Friendly & Responsive
Google focus on user experience, and the main category of UX is the mobile browsing of websites and blogs. So Google announced a mobile-first index, so make sure your website is mobile friendly and have a great user experience on mobile, tablet and desktop/laptop.

Make sure your website is fast and easy to use on smartphones with weak Internet access.

Those three tips contain too many tips inside them, they are the main principle for me when creating new websites or blogs for my customers. I hope those tips help you understand how the real life actually goes.

happy blogging,
_Abanoub Hanna_
New Here, think I'm getting around
Tags: meta
Published: 2018-12-16 19:50:35

---
title: New Here, think I'm getting around
published: true
description: What do I need to know?
tags: meta
---

I'm coming up on my one week anniversary. I posting this to include some thoughts to the admins, also to see if I can get some clarity, and point out some things I found along the way. First off, why did I sign up after all "how many times do you sign up after you've landed on a random website coming from Google" - https://dev.to/ben/comment/7boc

I arrived through some articles that showed up on my Google Assistant news feed. The article was of interest to me but I found that it perpetuated a concept which I thought was only prevalent in my circle. I wanted answers because in my circle I am getting my information third hand and that makes it hard to get at the bottom of it. So I signed up to ask the question in a comment. Long story short, I still don't understand but it drove me to continue pushing my thoughts out. I like a personal blog, but without followers you don't get feedback.

New users, posting help is right at the top of your new post. It is sad that it takes over what you're working on and need to scroll around but it is there.

I'm posting this to tag #meta, I think that is acceptable, I didn't see any guidelines on how I may want to choose tags. #help exists, maybe that should be there too?

The Faq states cross posting to your blog is OK. What are the expectations of this? I think a link isn't sufficient, should I summarize first or use the first paragraph. I copied the entire content when I did it. Am I supposed to use the canonical_url for this? 

Then we have the front page, the devto editors select these. There is a list selection to see newest posts. But I'd be interested in how  my feed with followed tags, people, and editor choice work together.

I decided to start posting basically unabridged thoughts. Not realizing that this was actually still a young growing community. And as I learn this tool I've gotten 10 followers who are also new, did my postings really get 10 people to sign up just to follow me?
From Retail to Bootcamp grad AMA
Tags: ama, bootcamp, javascript
Published: 2018-12-16 18:58:02

---
title: From Retail to Bootcamp grad AMA 
published: true
description: 
tags: ama, bootcamp, javascript
---

I worked in retail for around 7 years. Didn't go to college due to working two jobs right out of highschool. I attended a bootcamp, tried to build a startup, and landed my first role that I'm coming up on a year working at. 

ASK
ME
ANYTHING