Ever since Microsoft said SQL would run on Linux, I was excited. Finally, all the Linux administrators I had worked with could be quiet and the Oracle DBAs that said they were multi-platform. I organized the PASS Linux Marathon back in December 2017 and started the website, WeSpeakLinux, in efforts to help people learn more Linux skills (including myself) as Linux is different than running Windows. While I know it takes a while to adopt new technologies; I was wondering what it would take for people to adopt SQL on Linux. Alternating I’m offering up for you to blog about what everyone should know when working with SQL on Linux or anything else related to SQL running on Linux.
Yesterday was my 41st birthday. Twenty years ago, I remember my best friend asking me, “Where do you see yourself when you’re 40?” My reply was something like, “I can’t see myself as a 40 year old.” For some weird reason my mind went blank at 40. It wasn’t like I thought I’d be dead by 40, but I remember thinking of 30 or 35, but not 40. Maybe because 40 was twice my age and just too “far into the future” to think about?! But in a “blink of an eye” here I am twenty-one years later. Funny enough, now I can see myself as an 80 year old. Weird.
Time sure does fly by.
This past weekend I presented at SQL Saturday Dallas. Unfortunately, I had lost my voice when I landed Thursday afternoon. I did all I could to get it back by Saturday morning by drinking lots of liquid and getting rest. I got enough of my voice back to do my session (which was first thing in the morning) but had to leave shortly after for some much needed rest. I spent the rest of Saturday in bed and some of Sunday before I had to head to the airport. To top it off, I had 5 flight delays and ended up spending 7 hours at Dallas airport.
During those long hours at the airport, I had some time to introspect. I went over my session. I noticed how over the past couple SQL Saturdays I’ve spoken at, the younger attendees approach me asking questions at the end. The elder attendees mainly say, “thanks!” and the young attendees stick around and ask questions. I absolutely admire and respect that. A lot their questions are very easy to answer. But it’s easy *now* since I have more years of experience.
That brings me to this month’s T-SQL Tuesday idea…
This is my invitation to you this T-SQL Tuesday: Write your 20 year old self a letter. If you could go back in time and give yourself advice, what would it be?
Here are a few potential ideas:
- Things you would have done differently
- Any words of encouragement
- A “Do” and “Don’t Do” list
Obviously we cannot go back in time and live all over again. However, we can write down our advice so that way we have it ready for the next young aspiring technical professional (or any profession for that matter) who comes seeking advice.
As the saying goes, “learn from your mistakes.” I say, it would be even better to “learn from the mistakes of others so you don’t even have to make them.”
Remember to have fun during this process. I can’t wait to share my letter next week!
Invitation this month from Matthew McGiffen.
A few years back I started running regular SQL workshops in my
workplace. Teaching beginners the basics of querying databases with SQL,
as well as more advanced topics for the more advanced.
During one session we were discussing the issue of knowledge acquired
being quickly lost when people didn’t get the chance to regularly
practice what they’d learnt. One of the attendees suggested that I
should be assigning them homework.
I could see from the faces of everyone else present that the word
“homework” struck an unpleasant chord. Perhaps reminding them of school
days struggling to get boring bookwork done when they’d rather be at
relaxation or play.
Okay, so homework maybe wasn’t going to go down well, but I figured
everyone likes a good puzzle. So every Friday I started creating and
sharing a puzzle to be solved using SQL. This went on for the best part
of a year, then other things got in the way and gradually I stopped.
This is my invitation to you this T-SQL Tuesday. Write a blog post
combining puzzles and T-SQL. There’s quite a few ways you could approach
this, so hopefully no-one needs be left out for lack of ideas:
- Present a puzzle to be solved in SQL and challenge your readers to solve it.
- Or give us a puzzle or quiz about SQL or databases.
- Show the SQL solution to a classic puzzle or game.
- Provide a method for solving a classic sort of querying puzzle people face.
- Show how newer features in SQL can be used to solve old puzzles in new ways.
- Tell us about a time you solved a problem or overcame a technical challenge that was a real puzzle.
- Or just make your own interpretation of “puzzle” and go for it!
There’s some great stuff out there already. Itzik Ben-Gan’s done a bunch of them. There’s Kenneth Fisher’s crosswords. The SQL Server Central questions of the day. Pinal Dave’s SQL Puzzles. And there’s a few on my blog too if you take a look back:
Let’s puzzle together, trying to solve the challenges each other sets, and make it a real puzzle party!
Have fun all
This month’s T-SQL Tuesday is about what do YOU use databases for in your personal life that you are willing to share?
We work with data all day and sometimes all night long. When we turn off work, some of us continue to use data and databases to enhance our professional growth and learning. I know on some days the last thing I want to look at after work is- another screen full of data. Kinda of like how some auto mechanics have poorly running cars. How can that be? Because they work on cars all day long and they are tired of working on cars- including their own.
But I’m curious- outside of work and learning, what do you personally use databases for? Tracking books you have, recipes, collections, etc? While it can be said using databases for personal use could be either overkill or a hammer in search of nails on the other hand, it is exactly what they are for- storing data.
Years ago I challenged my daughter- I would give her $100 to go through a book about databases, sit her in front of SQL Server Developer Edition, and we would build a database to track our VHS collection. (VHS, heh, yes I’m old. Now get off my lawn).
We used a book called The Manga Guide to Databases.
It was great except they used the non-ANSI syntax for joins…
We whiteboarded and created a simple database.
The experiment was a ton of typing. And linking to the movies in Wikipedia. And then capturing some information about personal family events based on date. BTW, she is now a film student in college.
More than twenty years ago I was into FileMaker Pro working for a defense contractor. We needed a way to store many pictures about launch site equipment. It was my first time trying to figure out: a) how to store pictures in a database b) how to store metadata about the pictures and c) how to search and retrieve the pictures. There was no auto-tagging, object recognition or any sophisticated technology to help me out. So I used what tools I knew about. The project was a success but took way more time than I would have liked.
I am into pictures and have been looking at ways to store and retrieve them for quite some time. Some things work and some things don’t work so well. On 06Apr19, I will be presenting in Colorado Springs, Colorado for SQL Saturday on Storing Images in a Database – Tips and Techniques.
As I learn more about Python I’ll be able to do more sophisticated things. Like the kind of things I couldn’t do twenty years ago. One of them I want to tackle is how to extract text out of images. Ever see people taking pictures during a presentation with their smartphones? Or see code in a YouTube video? How do you get the text of the code out? Most people I think would say they just re-type it. But what if you could use software to do that for you? So I’m fiddling with Python-tesseract.
So what do you use databases for in your personal life that you are willing to share? Blog about it. I’m curious to see the range of uses and even if you don’t use databases for personal stuff, what do you see as the future of organizing personal data?
I’ve been listening to audio-books on the way into work, and the current one struck a cord with me.
It’s “Can’t Hurt Me” by David Goggins and it is about his story from a rough upbringing “into a US Armed Forces icon and one of the world’s top endurance athletes“.
One part of the story that has stuck in my mind is where he talks about “dipping into the cookie jar“. It’s an analogy that is easy to follow when you understand it.
Dipping into the Cookie Jar is about when the going gets tough and you don’t think you can handle anymore, then you think back about your accomplishments and take some sustenance from them. You dip back into that cookie jar and use whatever energy that provides to keep going.
Things are going to be tough for everyone at some stage or another. There are going to be low points spread out among the highs. While I know that reaching out to the SQL Family is an amazing external resource to help lift the members up, I think it’s also important for people to remember those accomplishments and realise that they have an internal resource as well.
That is what I want from the contributors of this T-SQL Tuesday, those memories that they can think back on for sustenance. Like the humble cookie, I want a humble brag.
Share some cookies
This month’s T-SQL Tuesday is about finding those cookies and sharing them.
These cookies do not have to be massive. Like the various cookies out there, they can be big or small – or even technical.
So tell me about a time when you had an accomplishment that can keep you going.
- About the time you made your first server specification for a new SQL Server instance.
- About the first time you wrote out the syntax for a Recursive CTE by memory.
- About the time you knew the answer to a technology question from someone else.
- About after all the study you passed the certificate you were after.
- About the time you created a PowerShell script, or a Python script, etc. and it worked.
- About the time you created a PowerShell script, or a Python script, etc. and it didn’t work but you were able to fix it.
- About how you inherited an unorganised instance and made improvements to it.
- About how you stood, trembling and scared for your first presentation, but you did it in the end.
The above “cookies” are all technical but your ones don’t have to be. Whatever your favourite cookie is, let me know.
What is Your “Why?”
I enjoy math. I noticed a pattern learning math, perhaps you experienced something similar. I found arithmetic an exercise in memory. I have a good memory (well, I had a good memory…) so memorizing a bunch of rules was no big deal.
When I learned algebra, arithmetic made more sense. In addition to the memorized rules, I saw why the rules existed. I understood the rules better as a result.
This pattern held all through my math education. I understand algebra better once I learned geometry. I understood geometry better once I learned trigonometry. I understood trigonometry better once I learned single-variable calculus.
An Axiom (for me)
I notice a similar pattern applies to my career (or careers, as the case may be). I’ve served in many roles:
- Farm laborer
- Stockyard laborer
- Truck driver
- Service technician
- Soldier (part-time in the Virginia Army National Guard)
- Electrical engineer
- Electronics technician
- Manufacturing automation integrator
- Software developer
- Data professional
The similar pattern manifests itself in this manner: I’ve enjoyed the position – and more success in the position – when I had a reason to do the work; some reason other than a paycheck. In some cases, I had multiple “why’s” beyond remuneration. For example, I join the Virginia Army National Guard to learn electronics and serve my country – to especially protect everyone’s right to free speech guaranteed by the First Amendment. I may not agree with what people say, but I was (and still am) willing to fight and die to preserve the right of US citizens to say whatever they want.
As a result, I enjoyed serving in the National Guard (for the most part). I learned more. I learned better, I think, because I enjoyed serving.
Entrepreneurship can be challenging. I believe one needs a “why” – or perhaps several “why’s” to remain an entrepreneur. The “why” cannot simply be money. Money isn’t inconsequential, mind you, but I believe the best “why’s” are less tangible.
Passion plays a major role for me. When business isn’t going well or when business is going too well, a couple intangible “why’s” – passions for both entrepreneurship and the kind of work I am blessed to do – inspire me to keep a steady hand on the tiller.
What is Your “Why?”
That’s the question this month: Why do you do what you do?
I look forward to your replies.
Have you heard the phrase “Automate All the Things”? That seemed to be the top buzz phrase of 2018 and means different things to different people.
Kicking off the T-SQL Tuesday season for 2019, I would like to ask, what does “Automate All the Things” mean to you? Everyone’s environment is different, everyone’s day-to-day looks different, everyone is a fan of different technologies and everyone’s environment is of different size. While I might want to automate checking of my backup success across my 500 servers, you might want to automate how new servers are provisioned. This can be a very broad topic, that could include a broad range of technologies. You might choose one type of technology to accomplish a task, where I might choose another.
So technically there are two tasks for this month:
- What do you want to automate or what automation are you proud of completing?
- What is your go-to technology for automation?
- Code Deployments
- VS Code
- T-SQL (honorable mention)
T-SQL Tuesday 109: Influence Somebody Invite
In December 2017, Mala Mahadevan (b | t) invited everybody to set goals for themselves. These goals were supposed to be about learning. But when you get down to the nitty gritty, anything that helps build character and career really comes from something that must be learned. It all starts with a bit of introspection. It is this introspection that I ask you to use as a building block for the party this month.
Lastly, in May 2018, Riley Major (b | t) asked everybody to reflect a bit on the theme from Ewald. This time though, the task was to give back to the community. Pay it forward, if you will, given that you had previously benefited from the kindness of somebody else.
Building on the work of these three fine individuals, here comes the difficult task. You have been the benefactor of some awesome help from somebody else. You even wrote about it and in a way, told that person how they impacted you, your career, or both. You have set goals for yourself to become a better you after some personal reflection, meditation, introspection. Then you have given back to the community in some way.
I am not asking you to be braggy, just aware and cognizant. What have you done to impact somebody else in the last 13 months?
How do you know you have impacted them? This is really the hard question. I want stories of how you impacted somebody else for the better. This may mean you will need to talk to some people and have a little retrospective with them.
This past year we lost some real juggernauts in the SQL Community such as Robert Davis (blog). We all know he impacted many people. We can also assume that he knew he impacted peoples lives. How great would it have been to sit down and have a personal discussion with him to let him know for certain how he impacted your career?
At PASS Summit, I had the opportunity to have such a discussion with somebody completely out of the blue. I know how much that meant to me. I also know that I was rather unaware of the influence I had on this individual.
If you have not already had the opportunity to discuss your influence, make the opportunity. If you have mentored somebody, have a chat with them. If you work with somebody that you might have influenced, have a candid chat. Ask them directly if you have been able to be a good influence to them. Ask them how you might be able to better help them.
I know, this gets us all out of our comfort zones – but we need to do things like this. It is a method of both giving thanks as well as just giving (it is the season).
If you are reading this and don’t feel you have influenced somebody, then talk to somebody that has influenced you. Let them know how you influenced them.
Then, after having this candid chat, please write about both the experience (even the awkwardness), anything you learned from the conversation, as well as some details around what it is you did that impacted said individual.
Doing this little exercise will not only help you to become a more involved team member, community member, and leader it will also help you improve on some of the interpersonal skills used for networking as well as public speaking.
Non SQL Server Technologies
This is also the week of the PASS Summit – the one conference that is still the largest gathering of folks active in the SQL community. For people like me, who have done the yearly trek to the summit more than a dozen times, it is literally like a family reunion. Aside from these sentiments – what has changed significantly about PASS Summit is that it is no longer a conference entirely dedicated to just SQL Server. There is so much more there – DevOps, Data Science/Machine Learning related, CosmosDB, PowerBI/data visualisation, Entity Framework, Micro Services, on and on. What it indicates is how much data world is expanding and how necessary it is for us to keep up with that. There was a time when I personally wanted to do MCM and retire a SQL Server guru – the MCM went away and right now I know for sure that just insisting on being a SQL Server Guru will not take me very far. I am actively learning how to work with DevOps, PostGres, ElasticSearch, and a number of other things.
So the challenge for this T-SQL Tuesday is – pick one thing you want to learn that is not SQL Server. Write down ways and means to learn it and add it as another skill to your resume. If you are already learning it or know it – explain how you got there and how it has helped you. Your experience may help many others looking for guidance on this.
The Death March
There is a famous book in our field written in the 2000’s by Ed Yourdon called “Death March“. In it he details the phenomenon in project management of death march software projects. He observed a trend in organizations who plan software projects to estimate so poorly that completion becomes overwhelming and unlikely.
More companies than ever before could be considered “software companies”. Project planning hasn’t gotten much better over time and we still have terribly managed projects. The best reason to explain this I found on Quora – Why are software development task estimations regularly off by a factor of 2-3? In particular, read the answer by Michael Wolfe midway through the page. It is both a humorous and scary analogy.
On this month of Halloween we are going to discuss our death march project horrors!
I invite you to share a story about a project you worked on or were impacted by that went horribly wrong. You do not have to have been a developer. Any role you played whether it was a sysadmin, DBA, business analyst, systems analyst, project manager, consultant, QA, etc. is entry requirements for this.
A word of advice – please change the name of the company unless you want to burn that bridge. For example: instead of saying “I worked for IBM…” you could say “I worked for a large technology consulting company”. I’m not trying to get anyone fired here!
Tell me your project horror stories – the worse the better.