Software on the Rocks: Episode 1: Traveling Angular
Welcome to Software on the Rocks, the Daily WTF podcast. This is a new feature we'll be running on a bi-weekly basis for a first season of a few short episodes. If folks like it, or more important, if we really like doing it, this may continue, but for now, we're committed to season of 6 episodes.
In this episode, Alex and Remy discuss ruining the site, the dangers of booking airline tickets, and why Angular 2 is absolutely the best possible framework for those who love lots of boilerplate.
This episode of Software on the Rocks is brought to you by Atalasoft.
Tune in two weeks, when we'll have special guest, Justin Reese of Code & Supply, to discuss software communities and the value of a good bar. Follow future episodes here on the site, or subscribe to our podcast.
TranscriptWelcome to software on the rocks, a daily WTF podcast brought to you by Atalsoft.
Remy (R) So, I guess we are going to do a podcast thing. This is one of our new things and I guess I probably should take it lame. Hello everyone, welcome to software on the rocks, I'm Remy Porter, chief editor of the daily WTF and responsible for single heading, ruining the site, if I judge by the comment section.
Alex (A): Hi everyone, this is Alex and I started daily WTF and still tried to take all the good credits for it. And any times someone complain, just really blame on Remy. I remember starting WTF in 2004 or something like that and literally in the 2 months it had been going downhill. I don't know"
R: The high of the first day. Let's talk about why we are doing a podcast: we have been doing periodical sponsor posts and this is really not a site that makes a lot of money by driving traffic.
A: WTF it could be probably be a full time job, if we were able to turn it into a proper media publication, but it is a hobby site. It's not free, there are server bills and other expenses and in order to pay for that you could just get google ads, but we wanted to do something different and that is why we have a handful of sponsors. By enlarge they are taking care of the website costs. One things that we wanted to do by giving sponsors, was starting a podcast, so thanks to them we are doing it.
R: Atellasoft is a vendor that makes SDK for doing document imaging: scanning documents, storing and processing them. It seems like a relatively good idea to solve the problem and I don't see other good solutions.
A: well, they have been around forever and have a solid community and product and I would recommend to just check them out.
R: one of the bullet thing that they do: web scanning for dot net. So they do scanning from a Java script API, which is a funny possibility. It brings back one of the projects I worked on. This was for a company called TPG industry. They almost certainly made the paint on your car. They care about colour, that means a lot. This is something that as a developer I really simpatize with: they make the paint. They take it to GMs factory and than GM applies the paint to the cars. The application process has to be extremely tightly controlled, because if the pressure used is wrong, the colour will come out different and when you will put the bumper on the car, the colour will be different of the one of the fender. And so they will get in fight with their customers: GM will say "the paint you gave us is bad, because we sprayed them to the fender and it doesn't match the bumper. But then TPG says "no, the paint we gave you was good, we fulfilled your requirements, you are using it wrong".
A: I've never heard that before in any other industry, that's amazing.
R: They have a device, that behind the scenes launches a windows executable. What we deploy just launching the webserver on the user's machine and from the browser we can do cross-orange requests to the webserver running locally on their machine.
A: So he built a website that downloaded a thick client, then installed the webserver, than used it to do all the hard work stuff.
R: Yep
A: It seems like not the easiest way. Why don't just have the desktop UI than?
R: They didn't want it, they wanted a web browser based UI. What is your hobby outside this?
A: That's a funny way to drive that requirement I guess. So, what are you doing now?
R: The hobby that pays the bills is that I am consultant, I'm good at training and this weekend I'm teaching a group of people to use Angular 2-
A: Wow, I've heard a lot of wonderful things about it, mostly from you, even if I don't do a lot of web developing.
R: Yes, I really love it. What I appreciate the most about Angular 2 is the big quality of sheer boiler plate. I want to have a series of project files that have nothing to do with my business that simply need to exist, so the application needs to find its own hustles.
A: Yes, you right. The advantage of having a giant number of files is that it gives the developer a sense of responsibility, it makes you really feel like you are building a web application. I see angular 2 more like the shitty sequel of regular 1
R: Yes. If you write code that works with angular 2, it might not work tomorrow. Angular 2 didn't care to make angular perfect: which each single release changes completely the program. That is the framework that they are giving you a product, that is goodish.
A: Some might say it's bad product management, but I say it's brave. If you just needed to upload angular and your code works, where is the fun in that? More applications should be doing that.
R: Sure! Furthermore, angular is creating new jobs, because of its complexity. But, putting the sarcasm down, I will definitely admit that there are actual benefits from Angular's approach. A while back I took a course about leading business improvement and me and the teacher had the same approach: we look at a process and model it. IT people when they see a complex process try to automate it. My solution is to delete the process, so it's not a problem anymore. I think that is a big cultural problem.
A: Yes, they are engineering a poor solution to an irrelevant or misunderstood problem. What have I been working on lately" oh booking airplanes tickets. What is fascinating to me about the airline industry is that it existed before information systems were a thing. All their fair rules are so deeply ingrained in the process that it is incomprehensible. Why not just simplify the way airlines work? If you start from scratch you will easily find a solution for that business problem than implementing the absurd business requirements.
R: But then you see something like South West Airline. What they did when they entered the industry, they did throw away lot of the legacy craft: they standardize their process and that is why circa 2002 every management magazine was "what is South West Airline doing now?". But it's the same idea: can we simplify the process?
A: They did it rapidly, we are talking about years not decades. They adapted to very fast changes in the market. That is all what this agile thing is all about.
R: It seems that might be one of your problems now.
A: Yeah, here at DevOps my job is to take ideas into reality quicker and to collaborate with different teams. It's easy, but sometimes anyone is in a different trench and is thinking about a small problem, without collaborating.
R: Sometimes they want to do something different, but as you said, organizationally they can't.
A: They recognize that the 6 months process sucks. The devup's software will give you the possibility to release in less than 6 months, which is amazing for them.
R: developers have fund a new solution, even better than devup that gives you feedback and doesn't require automation.
A: we call that develop misconstruction's Basically you take a bad software and you run it to the customers, waiting for bug feedbacks and when they come you make the adjustments. They are accepting a low quality process and product. Having a half working product is totally acceptable for this companies, which is very sad to me.
R: the idea of risk management is something that IT doesn't take really into consideration. All this things are rooted in risk management and risk tolerance.
A: this is an important topic, but nobody is going to care if we call out this things.
R: we believe that risk management is something important to talk about. We need a buzz-word and would love to see some ideas in the comments
A: furthermore, for future episodes we would love to bring up a guest, somebody outside us
R: yes, there are already some people aligned up.
A: this is going to be fun, I'm exited and hope we can keep it up.
Machine Generated Transcript[BREATH] and.
Welcome to software on the rocks daily to you the hot cast brought you by the dallas.
So i guess we are you going to podcasts thing when how.
This is apparently one of our new things and i guess i guess techie.
Basically i should take the plane hello everyone welcome to software on the rocks time.
Me reporter chief editor of the day and responsible for singlehandedly breuning the site five judged by the comments sections.
And i every and this is alex alex patted demel us if you ever wondered how it's pronounce and i started daily be teeth.
Still try to take all of the good credit for it.
And then any time someone complains just really blame it already.
So i remember starting day a little bit.
She's it was all two thousand and for something like that and literally in the first month in the first two months.
It had been going downhill i don't know i wish i could returned to the height of two thousand and for.
But i don't know how to.
The height of that first day.
But let's actually talk a little bit about a part of what we're doing.
Have cast we've been doing periodically.
Little sponsor post announcing sponsorships this is not a.
Like that really makes a lot of money by driving traffic right.
Yes it's a daily to beat if never you know it could probably.
These someone's full time job right if we were able to.
I don't know out into a proper media publication.
But it has been and still very much.
Is a hobby side but you know it's not like it's free.
And there's server bills and those sorts of things so in order to pay for those you could just get google as or something some terrible advertising.
Network to do that but what you know we wanted to do something different and that's why we have just a handful of sponsors.
And the idea is the dispensers or the folks who just pay for pay for the site they pay for all all the things sometimes we hold.
Know events in different cities here in the air but by a large yet there there take care of it and one of the things that we want to do with getting sponsors was fun projects like start a podcasts so thanks to tell a soft who.
His is one of our steamed sponsors that's what we're doing.
But the time soft is a bender that makes a day.
For doing document imaging scanning documents to hiring documents storing the documents process in the documents.
So of seeing like a relatively.
This way to solve that problem and there are made a lot of next ways to solve that problem i don't see a lot of good solutions and that.
And they've been around for ever to so they've got a pretty solid product pretty south.
Our community and i certainly don't have to.
You solve the problems that they'd you but it comes up and i.
They would most certainly recommend when it does come up just just check them out one of the.
I on things that they do web scanning for net though from your web browser doing scanning from.
Javascript pipa rooms a native client which is funny actually this ability brains back one of the projects that time.
We worked on this was for a company called industries they almost certainly made the paint on your car they care about color.
That matters a lot this is something that as a developer i've really sympathised with.
But they make the pink they take the point.
To gm factory and then gm applies the paint to their cars the application process.
Has to be extremely tightly controlled it's like the pressure.
Is just a little bit a half the color is going to come out of rock and then it's not going to match when you put the bumper on the car.
Going to be different than the friend or they hit in fights with their customers g amel stage and he you gave us is bad right.
Two weeks sprayed it on the offender and it doesn't match the number but.
[NOISE] says no the pain we give you was good we fulfilled you have requirements you're using it wrong.
That i've never heard that before and any other industries.
That's amazing amazingly mapped like they have a device all this at home talked to a serial we should billion mathematically symbols them here as a week.
The century is possible so what do we have is easy area we actually had never system.
We took advantage several got net one playing stalls and they work.
How i remembered use as a quick loathing web page and it.
Behind the scenes downloads and watches or windows executable what we deployed just launched to web server on the.
The users machine and then from the web.
These are we could do cross origin requests to the web service running locally on their machine.
Ok so he held a website that downloaded thick client.
They're just a desktop applications then install a web server the web browser then you used to all the scanning and hardware stuff.
How it seems like an awfully around about way why not just have the desktop you light and since they have to have a.
They didn't want to desktop you why they wanted a web browser based.
Why so that they wanted it in their web browser.
That's a fun waited.
Drives the requirement i guess them.
You know so you wrote the same not at you're not happy pg anymore when are you doing now.
Obviously my late is the daily well i should say what's your hobby out silent the most important job.
The happy that he's the bills every doing one of contracting consult.
Thing and as it turns out one of the things that time.
And usually good at i guess based on the feedback get ends up being training so this week i am.
Actually teaching a group of people how to use angular to this week.
Angular to so you know i don't do it.
Phone of web development anymore but i've heard just so many wonderful thing.
Things about angular to and i want this is mostly from you.
Oh yeah i am a notorious angular tool over what i really love the move.
Most about angular to is the sheer quantity of boilerplate because if there's one thing i don't want from a programming frame.
Or is to be able to just get started and search developing right away i want.
You have to have a series of project files that have absolutely nothing to do with my.
Business requirements that simply need to exist so that the application knows how to find its own asshole so i mean.
But the advantage to having all this there is a very very clear advantage i to having all these giant framework fire is at the.
The wind fifteen dependency is just to hello world is what you're doing is you're getting to.
Papers a fence of purpose you're getting them that looks isn't just some simple business.
Application that i have to do a mother and pull them in these triple requirements i am building a web application so it's interested me about angular is that a color and thank you.
For two it's actually not like to point i'm in another say it's super no but i see it more like the city sequel.
This are by saying that it's a sequel will evaluate the level of the crap factor of the sequel little.
But angular to is definitely very much a sequel and this brings us to another one of the really great things about working in the angular world.
If you right code today that works with angular to it might not work tomorrow.
You have a guaranteed built in job security especially while angle to is still kind of in development.
Normally expect from her least candidate and this is where a lot of other organizations.
I think fail right most organizations if they're releasing three year for released.
And it there's very minor changes between the right that just trying to polish things there just.
And together perfect the angle team didn't care about getting.
With a single released candidate they completely changed meter areas of functionality.
And that just sort of proves that this is a framework that they were giving you a product that is good.
But some might say that that's just poor product management some might say that that's just bad design decisions.
I'm going to come out and i'll say it right here it's braves what they're doing is courageous.
So all you have to do was upgrade angular to and then you're applications still work where is the fun in that.
They're doing you have favor and like i said it is a phrase.
Courageous move for them to do and frankly this more application should be doing that right and.
Here's the other beauty of this with all of the boilerplate you need and all of the scaffolding that you.
I have to do there is a big benefit in terms of overall employment.
Here you know everybody's talking about the economy and you know how.
So hard key to find a job well the angular team is creating new jobs because and.
You are requires so much boilerplate is so much scaffolding that we have to automate it right so there's now an angular so light team that's really stay command blind to all that's going to scaffold all this stuff for and i'm not and that's new job wow that's fanned task.
[UM] this is this is all literally to do the exact same thing that we've been doing for.
The past ten years stuff as in your web browser it's displaying there's a big paradigm shift right it's just and javascript i so.
Today in fairness there are definitely some advantages and actually putting the sarcasm down.
If anybody was not clear about how sarcastic were being.
I will definitely admit there are certain advantages to angular approach.
Each a male and see says or broken well they were never designed to [BREATH] they were never designed period.
They were never built to.
Did be application front end either so the combination of those.
Do i think lead to well the necessity for a web framework and then the necessity for a framework generator whatever the health angular cl eight years to.
[BREATH] it's a scaffolding tool and so it's actually funny a while back i ended up taking a work.
[UM] on leading business process of improvement no was the self develop.
I figured me and the guy teach in the class we're going to we're going to be able to connect on this because we have that seem had it to write we're going to.
Process we're going to model the process we're going to find a way to make.
The process more efficient and he's like i actually hate working with it people because it people's when they see a complicated.
A difficult business process their solution is to automate my solution is to figure out how to will.
Women get not automate it just get rid of it stop doing that with.
Something like a big complicated web framework to go to hell we're picking of angular.
But you see this in the job as space even stuff like through beyond rails right which is a much a lighter weight web framework there's a lot of me to have scaffolding tools because we need.
To generate a bunch of code in order for all this stuff to wire up.
And we don't tend to see that code is code that has a cost i think that's.
Cultural problem among software developers i think that business process improvement.
Did have a point there looking at a complicated process and just automating it is not the.
Bill gates solution getting rid of that process as a better choices.
It's more fun to automate it's more fun.
And we're not talking programming these are.
The folks installing automation tools workflow generators all these all these things but it's the.
Same thing there engineering a poor solution to a misunderstood problem when a lot of times you know you can just simplify the business process.
You know would have been working on lately booking airline tickets right so what they gets fascinated can be about that the air land industry is that.
Existed well before information systems were even a thing.
All their whole fair rules the fair class all of these things are so deeply in green and.
With the process that it is in comprehensible there's a perfect example of why not just simplify the way that airlines.
Work you know if you start from scratch.
That you're going to find a much easier way of solving that business problem then by a.
Having the existing absurd business requirements.
But that's where the see something link southwest airlines right.
What do they do what they were they entered the industry they did.
The thrown away a lot of the legacy craft they know standardized their fleet.
Bible flying and streamlining their process and that's why circle like two thousand and to every management magazine was like what self west doing now.
So but it was the same idea i can we throw away that craft can be simplified the business process what they did it is.
Very rapidly and we're talking airline rapidly years not decade.
That's adapted to very fast changes in the market that whole thing is really.
But in this agile thing is all about.
But the yeah we want to get requirements from a business idea to production.
As fast as possible it's almost like this might be one of the europe at issue.
You know that the space that i'm now most entirely end is devil ups.
A it's just as silly buzzword basically just is all about getting different.
He seems to collaborate and automate it it's get encode from idea to production faster it's like the most obvious thing but.
Because everyone so them entrenched in their own processes that they can't see that.
So you know what's nice about give up says it's easy to understand you look at agile agile is i don't know.
Not even have thing anymore because that's just how people develop software you don't see people saying oh you need to go agile stop doing water.
[SMACK] you do i do us have see that family.
You can see it you see a lot of organizations that are still someday we hope to be.
More agile with our development processes but right now we can't change things.
I mean you still feet folks advocating for this six month really cycles for these large at one for systems.
I won't say advocating i will say doing go on your eyes month billy cycle they want to do.
Something other than that but they just organizational he can.
There is a desire they recognize that the six months process sucks let's look at ten years ago we have people saying oh no agile.
That we need to spend six months packing out that changes that we're going to this is a million dollars.
These folks is agile thing going the faster releases will never work.
That's that to me is the exciting shift that i saw in you know through my career you take take the.
Folks you who are in that we can't go fashion.
In six months well you know develops the deaf ups.
Rules that have ups processes you know what ever going to calm those are going to give them one more reason that they can do it.
Which actually the trees is a really good point because we were talking about.
It amazing and maybe we should to meet things we should eliminate the.
Boxes and i have to say.
When you go back into all through the software development.
History developers have found was so.
Illusion to dive hops that is.
And more agile and that gives you instant feedback and requires absolutely no automation you know what i'm talking about make your changes in production.
Yet we call that develop missed ructions to be honest dance that's kind of where some.
These continuous deployment zealots really get towards right as they say let's just take a commit that someone made and get and media.
They want it through a whole cycle of automated testing and then deploy to production and then we'll have users you notice the bugs and then we'll immediately rollback back when the big reports were too high that.
It's consciously user hostile there's this idea that of our users complain about it enough and then we let our users complained and it's enough users complain it's insulting it's accepting the.
The norm of little quality you know nothing and that said though these days.
I'm not trying to build nonfunctional soft they're not trying to build you cracked that has bugs it just goes.
No matter how hard it tried you know what you is that i am see you.
I have heard it but they i'm not remembering.
So i'll tell you why it's because you're not a teenage girls who installs random checked were.
When you see a pop up that that gives your three de avatars that dance and have fun cost sons they make.
Chat software for i'm pretty sure kids i don't island to the website i don't know who the heck would install this.
That the whole notion of continuous to play that works.
Wonderfully for them because frankly any user who has in view installed will already have.
He was another mel ears and so that saying that in a small were just saying that type of user will have dozens of malware isn't solved.
They're not going to another and india crashes so to them having a buggy half working product totally acceptable but to.
You know for a more serious applications say that happened with your word processor so that happened with.
You're financial institutions that that's not going to fly.
And actually that brings up something and i just want to want to bring this and put a pin on this as a topic i love to discuss and a future episode because it has a huge significance to it and.
They have for development and a lot of softer developers dome.
Really think about it but it's the idea of risk management everything.
Why we build the automation that we build.
Around testing and so on all the way to why sometimes it's impossible to.
Dr organizational changed why you have those work and disease [COUGH] like oh we have to do this on the six month for cycle because we can.
We can manage the frequency of change doing it.
Faster than that all of those sorts of things are rooted in risk management and risk.
Tolerance almog gas.
Oh.
That we need to come up with better words for this stuff you know look this is just it's an important.
Topic but now we know that it's going to care if we call it these things we kind of come up with like i like some let's make up a buzzword no knows how to listen to for.
Risk management and risk mitigation even though that's what they need to deal.
I think anybody who has made it to this point in the episode as some homework we believe that risk.
Management and the overall were guns.
Nation all response to risk is really important to talk about but we know.
We can't use those words we we're going to brainstorm on your own but i would love if in the comments we can have some people back and around some ideas.
Do we need a buzz what we need the dead apps of.
This litigation yeah i'm [BREATH] grotesque up test tops right it may be something like that.
What to do and another and on the met a topic of future past week.
So that we want to start bringing on a guest another person.
We have you know that we can we do have a few.
That are lined up so for listeners we want to get the mirror or the writers on their also a lot of other other people in a circles.
I talked to how that that would be yeah i looked for two.
This is a lot of fun so i'm i'm excited and hope that we can keep it.
But they.
All music third does is given me cloud and it comes to use a creative commons.
[BREATH].
And it teams a was.
This is what they're [SMACK].