teleren/devto huggingface dataset:
Amazon Web Services
Tags: softwaredevelopment, amazon, aws, azure
Published: 2020-10-01 19:12:20

---
title: Amazon Web Services
published: true
date: 2016-07-21 07:00:25 UTC
tags: SoftwareDevelopment,Amazon,aws,Azure
canonical_url: https://www.funkysi1701.com/2016/07/21/amazon-web-services/
---

I am a big fan of Azure but I know zero about its biggest rival – Amazon Web Services or AWS.

So lets sign up for a free trial and see what it can do. ![Amazon Web Services](https://pwnedpass.com/wp-content/uploads/2016/07/aws-300x169.png?resize=300%2C169)

The AWS free trial is available from https://aws.amazon.com/free/ and lasts for 12 months. From memory I think the Azure free trial lasted only one month.

To start you need to login with your amazon account and create an AWS account. This requires your name and address and your payment info (you will only get billed if use services not covered by your free trial).

Interestingly AWS requires you to verify your identity via an automated phone call. (I don’t recall doing anything like this for Azure but please correct me if I am wrong.)

Once you are logged in you get a series of links displaying all the different services that are available. First impression is this is a simpler view to Azure’s portal with a similar amount of services. At the top right is an option to select which region you want to use, in Azure I use North Europe and West Europe, AWS has Ireland and Frankfurt.

## Create a Web App

First thing to try is setting up a website. I selected create a web app and I get a page asking me for its basic details (very similar to Azure, however AWS asked what language your code is written in, Azure handles all of these) AWS websites appear to support a host of different options similar to Azure.

The actual creation of your website takes a few moments (like on Azure). However the default URL for websites is similar to http://test.vjbbimyv7w.eu-central-1.elasticbeanstalk.com/ which is not quite as nice as the Azure equivalent http://test.azurewebsites.net

Azure has a host of command lines available via powershell. AWS has a similar command line interface called AWS CLI, including the option to deploy from git to your website.

AWS Toolkit for Visual Studio is an extension that allows for the publishing of websites to AWS. (Just like you can publish to Azure)

As I learn more about AWS I will continue to blog about it. [Amazon Web Services Pt 2](https://dev.to/funkysi1701/amazon-web-services-pt-2-33fi-temp-slug-7436081)

The post [Amazon Web Services](https://www.funkysi1701.com/2016/07/21/amazon-web-services/) appeared first on [Funky Si's Tech Talk](https://www.funkysi1701.com).
Recommended Eclipse plugins
Tags: eclipse
Published: 2018-10-13 16:18:50

---
title: Recommended Eclipse plugins
published: true
tags: eclipse
canonical_url: https://committed.software/posts/eclipse-plugins/eclipse-plugins/
---

We love [Eclipse](http://www.eclipse.org/) and use it daily (and nightly) as our Java IDE. (Ok, we use Android Studio for the Android stuff these days).

[![micah williams 348739](https://committed.software/static/micah-williams-348739-5d1a23f3685d19a8900a98080631bada-f3a32.jpg)](/static/micah-williams-348739-5d1a23f3685d19a8900a98080631bada-7a1db.jpg)

Here’s our top pick of plugins for Java developers.<!--more-->

As a start point, we use [Spring Tool Suite](https://spring.io/tools) rather than the ‘generic Eclipse’ since we develop with Spring Boot heavily. When developing plugins for Eclipse itself we highly recommend starting with [Eclipse PDE](http://www.eclipse.org/pde/) to save your time and sanity.

From the Eclipse marketplace (Help \> marketplace):

- **EclEmma** : Our favourite code coverage plugin mainly since it has such nice UI integration allowing you to pin point areas of weakness.
- **Findbugs** : Code quality
- **PMD** : More code quality
- **jDeodorant** : Even more code quality
- **Checkstyle** : Even more code quality
- **jAutodoc** : removes (some of) the tedium from code documentation
- **m2e-apt** : Not much use on its own but combine with [immutables](https://immutables.github.io/) for magic code generation.
- **Gonsole** : Git console inside Eclipse, great for mix and match with the Eclipse Git UI (though we also use [GitKraken](https://www.gitkraken.com/))
- Infinitest\*\*: Automatically run your testing on every save
- **PITclipse** : Mutation testing for Eclipse
- **Eclipse Class Decompiler** : for when you want to quickly check out code and you don’t have the source.
- **TestNG** : We don’t use TestNG much ourselves, but its nice to have a plugin when developing against open source projects which do.

And of course you must install our [spelling plugin](/opensource/spelling/spelling/) which helps your ensure your code is readable (actual English words).

Optional, but we recommend you install [Lombok](https://projectlombok.org/) in your IDE and to reduce your Java’s boilerplate.

Credit: Photo by [Micah Williams](https://unsplash.com/photos/tD2aCEKBlLc?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText) on [Unsplash](https://unsplash.com/?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
Hide number input spinners using CSS
Published: 2022-05-09 13:59:15

---
title: Hide number input spinners using CSS
published: true
date: 2016-07-18 00:00:00 UTC
tags: 
canonical_url: https://carl-topham.com//articles/hide-number-input-spinners-using-css
---

HTML 5 number pickers are great, since they help restrict users to the input ranges required in certain cases. Some browsers add little up and down arrows to help the user step though numbers.

On some browsers the pickers show by default even when the form inputs are not focused, which is a bit ugly. You can use CSS to turn off the number input arrows.

Obviously you want to put them back on focus since they are meant to be there by default.

```
// Webkit:
// Hide number picker 
input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
    -webkit-appearance: none; 
    margin: 0; 
} 

// Show number picker on focus 
input[type=number]:focus::-webkit-inner-spin-button, 
input[type=number]:focus::-webkit-outer-spin-button, 
input[type=number]:hover::-webkit-inner-spin-button, 
input[type=number]:hover::-webkit-outer-spin-button { 
    -webkit-appearance: inner-spin-button; 
    margin: 0 2px 0 0 ; 
} 

// Firefox: 
// Hide number picker 
input[type=number] { 
    -moz-appearance:textfield; 
} 

// Show number picker on focus 
input[type=number]:focus, 
input[type=number]:hover { 
    -moz-appearance:number-input; 
} 

```
Hiring Passionate Front-End Developer
Published: 2016-07-14 18:36:30

<p>Work with exciting new JavaScript technology! And really old, awful JavaScript technology that we can't get rid of because we're afraid to touch it. Work with some backbone, jQuery, some of the YUI library. We tried Angular so there's this whole Angular thing going on in parts. We just heard that mixins were crap in React so that sucks because that was a big thing we did for a while. You'll probably start by doing busy work for a few weeks, if not longer, while we try to get our test-suite to the point where anyone new could actually work on anything. If you're a woman we'll probably end up paying you a bit less but pat ourselves on the back for making a diversity hire.</p>
<p>Our company culture is really loose and flexible. You can work whichever hours you feel make you most productive, but we will privately judge you on the choices you make to this regard. But don't worry, we'll never be so rude as to tell you about our concerns.</p>
<p>You should have a good understanding of a few arbitrary patterns we don't really make use of, and be prepared to feign an understanding of some programming topics with your co-workers on an ongoing basis. We only hire 10x engineers, so we encourage a culture of bullshitting to seem smarter. For the hiring process itself, make sure to study up on your binary search trees for the technical interview, but don't worry, we'll probably end up hiring based on the gut feeling of somebody you're not going to be working with anyway.</p>
<p>You must be passionate, by which we mean you must be demonstratively passionate about everything all the time or you might trigger the insecurities of the founders, who would never admit their stupid ad platform is a drain on the Internet.</p>
<p>We only hire ninjas, maybe rockstars.</p>
Maybe Reinvent The Wheel
Published: 2016-07-12 20:41:22

<p>Don't reinvent the wheel &mdash; unless the wheel is written in PHP, opinionated in ways you'll always be fighting against and not a wheel, but a steaming pile of hot code. This site is not a Wordpress site and I am so happy I "reinvented the wheel." I chose a stack &mdash; Rails &mdash; that I enjoy working with and gave me just the right balance between constraint and freedom for the project. Rails is not "better" than Wordpress. They are apples and oranges, but laying the concrete myself has given me the ability to truly make the thing I want to make. Also, in my day job I don't get the simple pleasures of building a basic CRUD app, don't take that away from me naysayers!</p>
<p>A lot of the time, yes, you should reach for the existing implementation, but before you ever do that, you should go through the exercise of thinking about the consequences and reaching some sort of justification one way or the other, even if you have incomplete information, and you will have incomplete information.</p>
<p>Rarely will you be able to come up with the complete answer, but sometimes it is about the journey and not the destination. Thinking through the consequences of whether to write it yourself or use a library/framework/service is a very useful exercise in helping see into the future of your technical needs.</p>
<p>Writing software is a never-ending sequence of jumping and hoping you land on something soft. You never know what future needs will be but avoiding blanket rules like "not reinventing the wheel." &nbsp;Don't be afraid to "waste time" by taking a walk to think about everything that will go into the decision and what the future might hold. Are you saving time now but adding burden later? It will pay off.</p>
<p>Happy coding.</p>
Must have Atom Plugins
Tags: atom, ide
Published: 2018-10-13 16:18:29

---
title: Must have Atom Plugins
published: true
tags: Atom, IDE
canonical_url: https://committed.software/posts/atom-plugins/atom-packages/
---

[Atom](https://atom.io/) is a great text editor - it serves as our Go, Javascript/React IDE - thanks in part to its plugin support and the efforts of the community.

<!--more-->
## editorconfig

Helps developers maintain consistent coding styles between different editors.

[![editor config](https://committed.software/static/editor-config-69add82ceabbf6595ea6a65a8edde6c4-84ad3.png)](/static/editor-config-69add82ceabbf6595ea6a65a8edde6c4-3f248.png)

## language-babel

First class support for all ES6 and ESNext. It also has proper support for JSX, which makes it great for React development.

[![babel](https://committed.software/static/babel-f262542c91f9c9b9faf758f8de5ceb56-0b77d.png)](/static/babel-f262542c91f9c9b9faf758f8de5ceb56-0b77d.png)

## sublime-style-column-selection

A simple way to enable column selection. Just hold ‘alt’ while you select, or select using your middle mouse button.

[![column selection](https://committed.software/static/column-selection-ec27048e374bf95b6a057a0c62ef9cb9-5304d.png)](/static/column-selection-ec27048e374bf95b6a057a0c62ef9cb9-5304d.png)

## sync-settings

Synchronize settings, keymaps, user styles, and installed packages to a Gist.

[![sync settings](https://committed.software/static/sync-settings-0514e1c731a725effec97f57ec76afcc-dea29.png)](/static/sync-settings-0514e1c731a725effec97f57ec76afcc-dea29.png)

## file-icons

Adds file specific icons to atom for improved visual grepping. Works with Tree View and Fuzzy Finder and Tabs.

[![fileicons](https://committed.software/static/fileicons-e9c98db505160e8c3a44451a44433ad8-53da3.png)](/static/fileicons-e9c98db505160e8c3a44451a44433ad8-53da3.png)
A Python Ate My GUI - Part 2: Design
Tags: python, gui, webdev
Published: 2019-07-05 03:10:27

---
title: A Python Ate My GUI - Part 2: Design
published: true
tags: python, gui, web development
canonical_url: https://tryexceptpass.org/article/a-python-ate-my-gui-2/
cover_image: https://tryexceptpass.org/images/python-ate-my-gui.jpeg
---

### Creating a solution

In the [first part](https://tryexceptpass.org/article/a-python-ate-my-gui) of this series, we discussed a few existing modules that give us tools for building interfaces. I promised to come back with some ideas on how I would attempt to solve the situation, and this post is intended to cover aspects of my initial design.

However, first I need to discuss one more point on existing modules. In case you’re not aware, PyCon 2016 happened a few wks ago in Portland, and amongst the many wonderful talks, keynotes and open spaces, there was one in particular that is relevant to the topic of our discussion here: Russell Keith Magee’s talk on [BeeWare](https://www.youtube.com/watch?v=NqdpK9KjGgQ) and the work he’s done to solve the same problem. I highly recommend you take a look and help out with his projects if you can. It’s definitely a bold and brave solution that’s highly complex, but he already has it at a usable state and deserves massive props for going down that path. The Podcast.\_\_init\_\_ guys also have a [great interview](http://pythonpodcast.com/russell-keith-magee-beeware.html) with him going over the details.

[Read on ...](https://tryexceptpass.org/article/a-python-ate-my-gui-2/)
The Proper Way to Test Custom Controllers in Rspec
Tags: rspec, rails
Published: 2019-08-21 20:22:05

# The Proper Way to Test Custom Controllers in Rails

Recently at work we spent some time refactoring one of our app’s test suites to fix a few flaky tests and decrease the total amount of time the suite takes to run. That day, I ran `rspec --profile` to obtain a glimpse of what test and test groups were slowing the test suite down the most.

Most of the tests were acceptance or request specs that use Capybara or other tools to help simulate real requests from the app. However, two tests were actually controller tests! I was intrigued and dug into those files to find out more.

It turns out that both of the slow specs were testing behavior of controllers that inherit from a parent controller with some specific functionality. At work, our main app serves as a data store to some other applications that we develop. These different apps or contexts all hit specific controllers or namespaces around which we customize security and scope, among other things.

Both of these controller tests defined a new controller that inherited from the controller being tested, and then drew custom routes to hit during the test. After the test was completed, the spec redrew all of the routes to reset things back to the previous router state.

An example of how this looked is below:

```ruby
class TestController < CustomController
  def index
  end
end

describe TestController do
  before(:all) do
    Rails.application.routes.draw do
      resources :test
      end
    end

  after(:all) do    
    Rails.application.reload_routes!    
  end   

  describe "custom behavior" do
    # tests here
  end
end
```

Turns out that drawing and re-drawing routes is very costly in Rspec, as both of these tests were in the top ten slowest groups in our entire suite! (Note: A mystery still remains where when I ran these tests individually, they weren’t that slow. Maybe if I figure that out you’ll see it in a blog post in the future!)

Instead of defining a new controller to inherit from the one we want to test, creating new routes, and then erasing those routes once the test ends, we can test controller behavior via a built in Rspec method!

The `controller` block within an Rspec `describe` or `context` will generate an anonymous controller that inherits from the controller class given in the parent describe block. With this in mind, we can rewrite our tests like this!

```ruby
describe TestController do
  controller do
    def index
    end
  end

  describe "custom behavior" do
    # tests here
  end
end
```

Now how much cleaner is that! Pretty sweet if you ask me. It also clears up the issue of slowly redrawing routes with each test!

Go forth and test!
CSS Only Partial Width Borders
Tags: css, dev, development, code
Published: 2018-09-18 12:48:58

---
title: CSS Only Partial Width Borders
published: true
tags: css,dev,development,code
canonical_url: http://designfrontier.net/css-only-partial-width-borders
---

A design that I was recently implementing required a partial width underline for some headings and a partial height border as a divider between two elements.

But I didn’t want to add any extra elements to the DOM to get there. Because, well... why would I want to add non-semantic elements if it can be avoided?

The solution I came up with is pretty simple really. It uses a `:before` to handle positioning and sizing the border.

```
.partial-border: {
    display: inline-block;
    position: relative;
  }
  .partial-border:before {
    content: ’’;
    position: absolute;
    bottom: 0;
    width: 80%;
    left: 10%; /*this centers it based on the above width*/
    border-bottom: 1px solid lightcoral;
  }
```

That pretty much does the trick... no extra markup and partial width borders.

The `position: relative` on the parent is to allow its width to dictate the width of the absolutely positioned pseudo element. Other then that it’s pretty self-explanatory.

If you want to play around with this yourself [it is on codepen](http://codepen.io/designfrontier/pen/jAGEpv). Enjoy!
DIY Tuxedo Monitoring - ULOG and TMTRACE
Tags: oracle, tuxedo, monitoring
Published: 2021-11-03 06:26:17

---
title: DIY Tuxedo Monitoring - ULOG and TMTRACE
published: true
date: 2016-07-05 00:00:00 UTC
tags: oracle,tuxedo,monitoring
canonical_url: http://aivarsk.com/2016/07/05/ulog/
---

Going the least painfull way I wrote a Python script that analyzes Oracle Tuxedo user log entries and extracts trace information from it. It’s pretty easy to do, does not require compilation of some C code for a specific platform and user log can be analysed offline on my laptop instead of server itself. The downside of that is writing verbose trace file which takes both disk space and time.

So by default each user log entry has a coarse grained timestamp down to seconds. To get timestamp with milliseconds you must export environment variable before starting the application.

```

ULOGMILLISEC=Y; export ULOGMILLISEC

```

And then Oracle Tuxedo trace can be turned on and off while the application is still running by using tmadmin:

```

# on
echo 'chtr "*:ulog:dye"' | tmadmin
# off
echo 'chtr off' | tmadmin

```

If you have Tuxedo client applications that call server applications you should also export the environment variable:

```

TMTRACE=on; export TMTRACE

```

So far I have found two useful output formats. The first one is a diagram with service call graph that gives the impression of how complex the application is:

```

python ulog-trace.py log/ULOG.040516 -G -O callgraph.png

```

Gives output like this one (for my simplified demo application):

![Service callgraph](http://aivarsk.com/public/callgraph.png)

The second output format is similar to text-mode profiler output. But it shows Tuxedo services instead of functions and number of times the service was called and cummulative time. It also shows direct callees of the service, number of times it was called and cummulative time spent calling it. One thing to keep in mind is that time spent calling service will be greater (and can be much greater) than time executing service because of asynchronous nature of the call and queues involved.

```

python ulog-trace.py log/ULOG.040516 -T

```

For the same demo application gives:

```

HUB 40 3.458000
    tpcall(OUT) 40 1.746000
    tpacall(SVCB) 40 0.008000
    tpacall(SVCA) 40 0.006000
IN 40 2.769000
    tpacall(HUB) 40 0.007000
OUT 40 1.734000
SVCA 40 1.710000
SVCB 40 1.682000

```

If this sounds iteresting to you, [give it a try](https://github.com/fuxedo/tuxtrace). For diagram output you must have Graphviz binaries and Python module “pydot” installed.
How to disable selection of text in html using CSS ?
Tags: css, webdev, tutorial, html
Published: 2021-11-24 09:39:55

---
title: How to disable selection of text in html using CSS ?
published: true
date: 2016-07-04 13:28:08 UTC
tags: CSS,Webdev,tutorial,html
canonical_url: https://www.moreonfew.com/how-to-disable-selection-of-text-in-html-using-css/
---

Depending on your requirement you might have to disable text selection or text highlighting in HTML using CSS or JavaScript. While there are different ways to do this, you can easily disable text highlighting using CSS. Consider a situation where you have a copy paste functionality like a coupon code etc that you want the user to select and paste somewhere but at the same time you don’t want the user to select some other text around it like the label text etc. In such cases you would have to disable the selection of texts other that the specific text you want the user to select like the coupon code etc. You can easily make the text unselectable using CSS property `user-select`.

## Disable selection is CSS using user-select property

You can disable the selection using the following CSS Code :

```css
.no-select {
-webkit-user-select: none; /* Chrome all / Safari all */
-webkit-touch-callout: none; /* iOS Safari */
-khtml-user-select: none; /* Konqueror */
-moz-user-select: none; /* Firefox all */
-ms-user-select: none; /* IE 10+ */
user-select: none; /* Common (limited support) */
}
```

Please note that the browser support is quite limited for `user-select` as of when I wrote this article. However, you can check for the latest support list at [caniuse](http://caniuse.com/#search=user-select). To summarise I would say that you can use `user-select` css property to disable selection is css however, please check for the browser support before you go ahead and use it on any production site.

The post [How to disable selection of text in html using CSS ?](https://www.moreonfew.com/how-to-disable-selection-of-text-in-html-using-css/) first appeared on [MoreOnFew](https://www.moreonfew.com).