teleren/devto huggingface dataset:
Hosting multiple websites on Ec2 using IIS
Tags: amazon, ec2, aws, cloudhosting
Published: 2018-02-19 11:24:06

---
title: Hosting multiple websites on Ec2 using IIS
published: true
description: 
tags: Amazon, ec2, AWS, cloud hosting
---

Hosting multiple websites on Amazon Ec2 using IIS is simple, all you need to do is add a firewall inbound rule, edit the site binding in IIS, add a custom TCP rule in the ec2 security group to support the port you are going to be using.

For example, you have two websites, one is the web app and the other is the Web API, and you need to use the same IIS server, the first thing to do is:

1) Add a custom TCP Rule in the ec2 dashboard under NETWORK & SECURITY tab and set the port to 81

2) Configure open IIS and create the two websites, after creating the websites,
you edit the binding for the two websites using port 81 on the API and port 80 on the web app.

3) Add a firewall inbound rule to support access from port 81


For a full-detailed information, [check this out](http://techcerberus.blogspot.com.ng/2018/02/how-to-host-multiple-website-on-amazon.html)
Chrome distrusts SSL Certificates
Tags: softwaredevelopment, certificates, development, devops
Published: 2019-12-31 22:23:10

---
title: Chrome distrusts SSL Certificates
published: true
date: 2018-02-19 08:00:56 UTC
tags: SoftwareDevelopment,certificates,development,devops
canonical_url: https://www.funkysi1701.com/posts/chrome-distrusts-ssl-certificates-2eme
---

One of the websites I have been working on has been displaying an error in the console. The error reads as follows.

```
The SSL certificate used to load resources from https://example.com will be distrusted in M70. Once distrusted, users will be prevented from loading these resources. See https://g.co/chrome/symantecpkicerts for more information.
```

But what does this mean? Well let’s start by looking at the [link](https://security.googleblog.com/2017/09/chromes-plan-to-distrust-symantec.html) provided.

In January 2017 it was revealed that Certificate Authorities run by Symantec which include Thawte, VeriSign, Equifax, GeoTrust, and RapidSSL had been issuing certificates that did not comply with baseline standards.

Starting with Chrome 66, Google has decided to remove trust for these certificates. Chrome 66 is due for release around 17th April. My error mentions M70 so what does that refer to?

Chrome 70 which is due to be released in October 2018 will removed the trust for another batch of Symantec certificates.

If you are getting one of these errors because you are using a certificate that is going to be distrusted what will your site look like in Chrome 66 or Chrome 70?

Well Chrome 66 is now in the dev channel so we can give it a try.  ![](https://i0.wp.com/www.funkysi1701.com/wp-content/uploads/2018/02/tempsnip.png.jpg?resize=662%2C443&ssl=1)

Not very nice for your users is it? Now is the time to order a new SSL certificate to avoid this happening to your site.

I first saw this error a few months ago and have been reading up about it and waiting for Chrome 66 to reach the dev channel so I could test what it did to my site. However now that I have Chrome 66 installed I spotted the intranet for the company I work for is also affected. I do not directly work on the intranet so I notified the security team that they may want to look into this.

Unfortunately the response I received has been that Google needs to fix this before Chrome 66 is released. I am not criticising my employer or the security team, however this isn’t something Google can just “ **fix** “.

The certificates issued were issued by a CA that had issues so in order to maintain the trustworthiness of all certificates Google had little choice but to distrust them. Google and security experts need to be making more of a fuss about this and I am joining in on making a fuss by writing this blog. [Scott Helme](https://scotthelme.co.uk/are-you-ready-for-the-symantec-distrust/) estimates that there are about 7000 websites which may be affected by the M66 and M70 distrusts.
How would you define a Full Stack Developer and what role do they play in the company?
Tags: discuss
Published: 2018-02-19 02:15:25

---
title: How would you define a Full Stack Developer and what role do they play in the company?
published: true
tags: discuss
cover_image: https://thepracticaldev.s3.amazonaws.com/i/f23tvy8vgpy37al1rucw.jpeg
---

Being a "Developer" is such a vague term. There are lots of different types of developers (backend, frontend, python, ruby, django, laravel, etc). However, you often see Full Stack Developer positions in job postings. Where do these people fit in already existing tech companies where they have specialized devs on each aspect?
How would you write tests for a Node CLI?
Tags: discuss, node
Published: 2018-02-18 20:29:58

---
title: How would you write tests for a Node CLI?
published: true
description: 
tags: discuss, node
---

I’m writing my new project [Candy](https://github.com/moriczgergo/candy), and I’m writing a CLI for it.

The main project is tested with mocha and chia, but I’ve never seen anyone test a CLI before, nor any ways to do it.

How would you/did you approach this problem?
What's most likely to kill your motivation for the day/month/year?
Tags: discuss
Published: 2018-02-18 19:58:10

---
title: What's most likely to kill your motivation for the day/month/year?
published: true
tags: discuss
---

It happens to all of us: we're happily working when *bam*, something happens. It need not really be bad, in odd cases it can be good, but in anycase it's just eliminated your motivation to keep working. Sometimes for a short while, sometimes a long while.

What is it that makes you lose your motivation for a day, a week or month, or perhaps forever?
Why Does The State Object Exist In React?
Tags: react, design, post
Published: 2019-01-20 15:24:46

---
title: Why Does The State Object Exist In React?
published: true
tags: react,design,post
canonical_url: https://horia141.com/why-state-in-react.html
---

Use `@depiction` asks on StackOverflow [Why does state object exist in React?](https://stackoverflow.com/questions/48869892/why-does-state-object-exist-in-react/48870135#48870031). I’ve provided a biggish answer to the question, so I figured I’d add it to the blog as well. My answer follows:

First of, state is usually used to hold something local to the component which can be changed by user action or a push updates from the server etc. - something like whether a checkbox is ticked or not, or the input value from a textbox. The keyword is that it’s local to the component and there’s no reason for it to be “at the root of the class” (whatever that means precisely). There are extra constructs on top of that, such as redux/flux etc, and those are a bit more global, but it’s not required for regular and small-scale React.

The same can be said about the usage of `setState` - it’s a design decision. It’s not needed, and React could probably use the same approach Angular does, which is scanning of component state fields changes on certain application-level events. It’d be even easier since all that’s considered “state” is put into the `state` field, and all that influences rendering is in either `state` or `props` (and possibly `context`). But I find the very explicit `setState` approach much more reasonable - the points at which state changes and a render is triggered are much more well defined than Angular’s “sometime in the future”/magic approach.

A related thing is that in React there’s just a unidirectional data flow. Basically `DOM = f(State, Props)`. And any change to the state must be explicit. So for an `<input>` element, you’d supply a `value` attribute, but also an `onChange` attribute. The latter is a function invoked on a change, and it will, at some point `setState` and change the state field feeding into the `value` attribute (as part of the render). Contrast this to Angular where, AFAIK, you’d just supply the value and there would be a bi-directional data flow between the input and the state. It looks nicer locally, but it’s a pain to work with when composing components - so much so that the pattern I’ve used most often in Angular for dealing with it was basically what React is doing. Again, a design constraint which makes you write more code, but also provides a much more saner development experience.

Overall React has a much stricter approach to building the UI than Angular does, or even jQuery or plain-ol-javascript. For some that’s a bonus, for other’s it’s annoying. I’ve used all three, and I’d choose React for all future work.
Comparing Frameworks/Languages
Tags: php, node, discuss
Published: 2018-02-18 15:17:50

---
title: Comparing Frameworks/Languages
published: true
description: 
tags: PHP, NodeJS, discuss
---
Most of the people who say NodeJS is better than PHP has not even used PHP once in their lives. I'm not saying PHP is better, but you need have some amount of experience in both to make that kind of assessment.
Gaming JavaScript
Tags: gamedev, coding, javascript
Published: 2018-02-18 15:06:49

---
title: Gaming JavaScript
published: true
description: Game engines for JavaScript.
cover_image: https://thepracticaldev.s3.amazonaws.com/i/r04cy8noyhtun2ga1ry6.jpg
tags: gamedev, coding, javascript
---

_[Image by David Werner  on Flickr](https://www.flickr.com/photos/okaysamurai/)_


So you're somehow ended up being a web-developer and coding JavaScript and year after year you learn that JavaScript can do more and more. What you used to create blinking texts for your counter strike clan page is now able to make full fledged servers via Node.js or native mobile apps via React-Native. 

But if you're a bit like me, you probably dreamed about doing game development before you made mad bucks with old boring apps. Wouldn't it be nice if you could create your very own games with the JavaScript skills you already have? Rest assured, for there are a bunch of game engines out there that allow you exactly this!

## [Phaser](http://phaser.io/)

One of the better known contenders in the field of 2D game engines for the browser. Very code heavy but you'll definitely feel at home, if this is your jam. It just released a complete rewrite with [version 3](https://github.com/photonstorm/phaser/releases/tag/v3.1.0).

## [Crafty](http://craftyjs.com/)

Another 2D engine and the one I started game development with. It's a bit smaller and with it's entity component system more opinionated than Phaser, but I think it's a solid foundation too. It released it a new [version](https://github.com/craftyjs/Crafty/releases/tag/0.9.0) this month too.

## [React Game Kit](https://github.com/FormidableLabs/react-game-kit)

A lesser known contender, also 2D, that helps you to create games with React. It offers basic concepts like a game loop or stages. It also works with React-Native, which makes native mobile games possible. Probably not suited for bigger projects, but certainly a simple way for React devs to get something running quickly.

## [BabylonJS](https://www.babylonjs.com/)

This time a 3D engine that works with the power of WebGL, WebVR and WebAudio. If you're not the 2D type, but also want to keep things inside the browser. As the other engines I mentioned here, it's more coding heavy than major engines, but if you aren't into big things like the Unreal Engine (C++) or Unity (C#), Babylon is the way to go.

## Conclusion

There are way more engines based on JavaScript out there and some even allow you to build games as _nativish_ apps. Personally I prefer to control much of the code on my own, which reflects in the engines I listed here, but some also come with graphical editors. So if you're a JavaScript pro and want to make games, don't hold back!
Steps to starting a new project
Published: 2018-02-18 14:56:51

---
title: Steps to starting a new project
published: true
description: 
tags: 
---

I'm a serial project starter. I couldn't deny it even if I wanted to. This isn't a good thing, but it means that I've got a good grip on getting started.

Whenever I start a new personal project, I always endeavour to do the same basic things, and this is my list for anyone else who might be interested. I'm not going into detail because they should all be fairly self explanatory anyway. Depending on the planned scale of the project not all of these steps are going to be needed, or worth the effort, so it's a case of picking the ones that make sense.

* New version control repo - normally Github
* Issue tracking - for bugs but also actual development stories
* Set up dependency management - I'm a big Maven fan for Java projects
* Set up dependency version checking to keep up to date
* Unit testing
* Build time integration testing of as much as possible - using as many real dependencies as possible. For example, I use the embedded postgres database for this
* Docker images for all deployable components
* Full stack end to end testing. This is where the docker containers come in useful.
* Continuous integration on every push - including branches and pull requests. I've recently started using Shippable, but there's loads to pick from
* Continuous deployment - heroku is good here, but there's a multitude of choices

Only at this point would I then start actual development work. But at this point I'm secure in knowing that what I'm doing is well maintained and works.
Introducing "Quantum of Ideas"
Tags: quantumofideas
Published: 2018-02-18 16:00:04

---
title: "Introducing \"Quantum of Ideas\""
published: true
tags: [quantum-of-ideas]
canonical_url: https://dmerej.info/blog/post/introducing-quantom-of-ideas/
---

_Initially published on [my blog](https://dmerej.info/blog/post/introducing-quantom-of-ideas/)_.

This year I’ve decided to try something a bit different.

“Quantum of Ideas” is the title for a new series of posts. You’ll find them in the [list of posts tagged with ‘ideas’](https://dmerej.info/blog/tags/ideas)

In each post, I will present an idea I had about a certain topic.

Most of the time, those ideas are still in a “draft” state: there are still practical issues to solve and they may not even be worthy to implement.

So why bother sharing those?

My hope is that they will provide a different point of view about certain problems and lead to interesting discussions.

So, feel free to share them, and if you’re bold enough to start working on them, please let me know.

Also, more that ever, do not hesitate giving me [feedback](https://dmerej.info/blog/pages/feedback/). If you do like my ideas, a small positive comment will be appreciated, and if you don’t, you can yell at me for being a moron who has no clue about how the real world work.

Without further ado, here’s the first item on the list: [Helping BBC’s subtitlers](https://dmerej.info/blog/post/helping-bbc-subtitlers/)
linking CGAL with qt-creator proplem
Tags: cgalqtcreator
Published: 2018-02-18 12:28:52

---
title: linking CGAL with qt-creator proplem
published: yes
description: 
tags: CGAL ; qt-creator
---
 0
down vote
favorite
	

I'm creating a qt project using QT-CREATOR and VS c++ compiler on windows OS,

the .pro file:

HEADERS = \
    mainwindow.h \
    myqglwidget.h \
    My_CGAL_Config.h \
    My_Vertex_base.h \
    My_Halfedge_base.h \
    My_Face_base.h \
    my_polyhedron.h
SOURCES = \
    Viewer.cpp \
    mainwindow.cpp \
    myqglwidget.cpp \
    my_polyhedron.cpp

INCLUDEPATH += .
INCLUDEPATH += C:/dev/CGAL-4.9/auxiliary/gmp/include
INCLUDEPATH += C:/dev/CGAL-4.9/include
INCLUDEPATH += C:/local/boost_1_59_0
INCLUDEPATH += C:/dev/libQGLViewer-2.7.1/QGLViewer

LIBS += -LC:/dev/CGAL-4.9/lib
LIBS += -LC:/local/boost_1_59_0/lib
LIBS += -LC:/dev/libQGLViewer-2.7.1/QGLViewer -lQGLViewer2

 


'qglviewer.h','config.h' are in specified folders (C:/dev/libQGLViewer-2.7.1/QGLViewer , C:\dev\CGAL-4.9\include\CGAL) Respectively, so I think that the problem in warning message "The build directory needs to be at the same level as the source directory."

the compile output message :

Error while building/deploying project dr_mine (kit: Desktop Qt 5.7.1 MSVC2013 64bit)
The kit Desktop Qt 5.7.1 MSVC2013 64bit has configuration issues which might be the root cause for this problem.
When executing step "Make"

I appreciate any help , thanks
What a Java programmer should learn to work in Canada? Is it a good lenguage to get a job?
Tags: java, discuss
Published: 2018-02-18 12:00:49

---
title: What a Java programmer should learn to work in Canada? Is it a good lenguage to get a job?
published: true
description: 
tags: Java, discuss
---

Well, I'm Brazilian, Java developer. I have only 2 ½ years of experience, but because of political and economic problems I would like to migrate to Vancouver, Canada.

Is there a Java developer working in Canada who can give me some tips on what to study to increase my chances of getting a job in Vancouver?
Using Scripting to quickly execute repetitive Tasks
Tags: programming, productivity
Published: 2018-02-18 11:59:39

---
title: Using Scripting to quickly execute repetitive Tasks
published: true
description: Sometimes I have to do a repetitive task for a project, that would take hours if done manually. Shell commands are normally the way to go, but I've always had a hard time learning them, and after I did, I forgot them quickly, because I need them very infrequently. So I found another solution.
tags: programming, productivity
canonical_url: https://www.domysee.com/blogposts/scripting-repetitive-tasks
---

This is a cross-post from my [personal blog][3].

Sometimes I have to do a repetitive task for a project, that would take hours if done manually. Shell commands are normally the way to go, but I've always had a hard time learning them, and after I did, I forgot them quickly, because I need them very infrequently. So I found another solution.

Scripting! Especially with **interactive ruby**.

For example, recently I had to rename a bunch of files, removing *".inline"*.

The files I had looked like this:
> icon.inline.svg
> logo.inline.svg
> (and a bunch more)

And they should be renamed to
> icon.svg
> logo.svg

Okay, lets do this.

1. Navigate to the directory where the files are and start the interactive ruby shell with `irb` (if Ruby is installed)  
2. Get all filenames in a variable: 
```ruby
irb(main):001:0> filenames = Dir.glob("*.svg")
```

3. Rename them in a loop:
```ruby
irb(main):002:0> filenames.each { |f|
irb(main):003:1* File.rename(f, f.sub(".inline", ""))
irb(main):004:1> }
```

Done. Quite easy, right?

Now, this is a simple use-case. Looking up a shell command wouldn't take too long.  
But what if it gets more complicated?  
What if the file needs to contain a special text? What if the file size has to exceed a particular limit? What if ...

You know where I'm getting at.  
With Ruby, I know what to do. Just look up whatever I don't know and combine everything with the constructs I, as a developer, am familiar with. 

Since I have never extensively used it, I'd have a lot more problems with shell commands/scripts. I'd need to look up how to do the subproblems (e.g. getting the file size) AND how to combine them with pipes, arrows and whatever else exists.

Additionally, Ruby statements are usually a lot easier to remember. Staying with the example of getting the file size, this is how it works with bash ([accepted answer in the first Google result][2]):

```bash
stat -f%z icon.inline.svg
```

With Ruby:
```ruby
File.size("icon.inline.svg")
```

Doesn't Ruby look a lot more straightforward?

So, if you're like me and don't know how to do complex tasks with shell, give [interactive ruby][1] a chance. It will infinitely speed up those annoying repetitive tasks.

[1]:https://en.wikipedia.org/wiki/Interactive_Ruby_Shell
[2]:https://unix.stackexchange.com/a/16644/276610
[3]:http://www.domysee.com/blogposts/blogpost%2018%20-%20using%20scripting%20to%20quickly%20execute%20repetitive%20tasks/

---

Follow me on [Twitter](https://twitter.com/Domysee) for more of my thoughts, articles, projects and work.
Azure Data Factory and SSIS compared
Tags: azuredatafactory, ssis
Published: 2018-02-14 10:27:18

---
title: Azure Data Factory and SSIS compared
published: true
description: Azure Data Factory and SSIS compared
tags: Azure Data Factory, SSIS
---

I see a lot of confusion when it comes to Azure Data Factory (ADF) and how it compares to SSIS.  It is not simply “SSIS in the cloud”. For an overview of ADF, and I’ll assume you know [SSIS](https://mindmajix.com/ssis-training). So how are they different?

SSIS is an Extract-Transfer-Load tool, but ADF is a Extract-Load Tool, as it does not do any transformations within the tool, instead those would be done by ADF calling a stored procedure on a SQL Server that does the transformation, or calling a Hive job, or a U-SQL job in Azure Data Lake Analytics, as examples.  Think of it more as an orchestration tool.  SSIS has the added benefit of doing transformations, but keep in mind the performance of any transformations depends on the power of the server that SSIS is installed on, as the data to be transformed will be pushed to that SSIS server.  Other major differences:

1. ADF is a cloud-based service (via ADF editor in Azure portal) and since it is a PaaS tool does not require hardware or any installation.  SSIS is a desktop tool (via SSDT) and requires a good-sized server that you have to manage and you have to install SQL Server with SSIS
2. ADF uses JSON scripts for its orchestration (coding), while SSIS uses drag-and-drop tasks (no coding)
3. ADF is pay-as-you-go via an Azure subscription, SSIS is a license cost as part of SQL Server
4. ADF can fire-up HDInsights clusters and run Pig and Hive scripts.  SSIS can also via the Azure Feature Pack for Integration Services (SSIS)
5. SSIS has a powerful GUI, intellisense, and debugging.  ADF has a basic editor and no intellisense or debugging
6. SSIS is administered via SSMS, while ADF is administered via the [Azure portal](https://mindmajix.com/microsoft-azure-training)
7. SSIS has a wider range of supported data sources and destinations
8. SSIS has a programming SDK, automation via BIML, and third-party components.  * 9. ADF does not have a programming SDK, has automation via PowerShell, and no third-party components
10. SSIS has error handling.ADF does not
11. ADF has “data lineage“, tagging and tracking the data from different sources.  SSIS does not have this

Think of ADF as a complementary service to SSIS, with its main use case confined to inexpensively dealing with big data in the cloud.

Note that moving to the cloud requires you to think differently when it comes to loading a large amount of data, especially when using a product like SQL Data Warehouse
Is javascript or typescript the best for backend development? 
Tags: javascript, node, discuss
Published: 2018-02-18 09:24:29

---
title: Is javascript or typescript the best for backend development? 
published: true
description: 
tags: javascript, node.js, discussion
---

If you use javascirpt (or typescript) for backend server development, you can basically write web apps only with it.
From this, do you agree that javascript or typescript is the best language for backend development?

1. Why do you agree/disagree?
2. In what cases, are they suitable for backend server?