The PASS Summit 2015 Speaker list has been released and I wanted to congratulate everyone that was accepted. It’s a great honor and I’m proud to be on the list once again.
I also apologize to everyone that submitted and wasn’t accepted. I hadn’t planned on submitted, but part of my job is speaking to the community. I was asked to submit sessions, which I did. Of the three I submitted, one was accepted.
I saw a post from Mark Broadbent (@retracement) today that talks about his submission experience this year. He’s spoken at the Summit before the Rally, and numerous SQL Saturdays. He’s got experience and success as a speaker. It’s hard to call a single session selection a failure, and I hope Mark doesn’t feel that way.
It’s Not You
One of the things I’d like to say is that if you submitted a session and weren’t picked, it’s not necessarily you. This is certainly true for the Summit, but the same thing can apply at SQL Saturdays or other events.
I’m sure you doubt I know what I’m talking about, and that might be true, but I certainly understand how you feel. I’ve received two rejections this year from events that didn’t like my submissions. It’s tough, and it can be a blow to your self-confidence, but it’s not necessarily you.
Don’t get me wrong. It could be. Please solicit feedback from the organizers and friends about your submissions. There might be things that you are doing poorly, and if so, you should learn to do a better job at writing abstracts, and a better job of speaking. I regularly ask people what they thought of my talks, and I’m happy to go watch and give feedback to others as well.
I’m sure some of you have heard of, or seen spoofs, of medical school grading where professors start a test letting students know that there will be x As, y Bs, z Cs, i Ds, and j Fs. In other words, a forced ranking where you must compete in order to succeed. That’s the PASS Summit submissions, but in a more complex scenario.
You might submit a great abstract, on an outstanding topic. Maybe you’re a SQL Server memory guru and you want to put in a 400 level internals talk on memory pressure. Great. But if Adam Machanic submits on a similar topic, I bet you don’t get picked.
In the various areas, sessions are ranked, and no matter how good a job you do, it’s possible you’ll get beat out by someone else. That’s not to say it’s hopeless. I believe that some slots are reserved for first time speakers (to the Summit, not in general), but it does mean that your abstract needs to be good AND not have great competition in your topic area.
Submitting to the Summit and getting picked is a bit of a lottery. It helps to speak at multiple other events (user groups, SQL Saturdays, etc), and get some reputation, but it’s also important to pick topics that will be both interesting and don’t have lots of competition. It also becomes important to write a great abstract, and if you need help, read Adam Machanic’s post on this topic.
Above all, don’t get discouraged. Get help in putting your submission together. Ask friends, ask colleagues, ask your family and read what others have done. Pick a topic area you’re comfortable with and try to find a niche that minimizes competition. Above all, make sure you get feedback from PASS and try to use that to tailor the next submission.
You can do it. We see more and more new speakers every year, and you have a better chance if you think about how to best present yourself to the world.
There have been so many SQL Saturday events in many places, and in most of the US states, but there are a few that have never had an event. One more state gets its first event this July, with SQL Saturday #427 in Sioux Falls, South Dakota.
I’m proud to be speaking at the event, and I just finished booking my travel. I’ve never been to South Dakota, so I’m looking forward to wandering around a bit on Friday before we kick off the first SD SQL Saturday on July 18, 2015.
I’m going to be talking about Continuous Integration in the afternoon, but there are some other great sessions. Learn about baselines, Service Broker, Auditing, SSAS, Stress testing, Reporting, and more.
If you’re anywhere nearby, make some plans now to get to Sioux Falls in July for some SQL Server education.
In April, Ed Leighton-Dick set up a challenge to motivate new bloggers to begin writing about their knowledge of SQL Server. This is a passion of mine, and I believe this is one of the ways you can truly help interest potential employers in your work. It’s allows them to perform some due diligence, and I’ve had success in my career with employers being impressed with the knowledge I’ve shared through blogging.
Ed made note of a new Twitter hashtag, #SQLNewBlogger, and there were a few people that participated in the challenge. However, there weren’t enough. I was really hoping to see more people join in, start blogging, and showcasing their knowledge. Therefore, I’m making an appeal here.
Let’s extend the SQLNewBlogger. I’d like to change the rules a bit and see if I can motivate a few of you to start building your communication skills and showcasing your knowledge across the next year. Just like a class at a gym can motivate you to try harder and longer than you might otherwise, I’m hoping the #SQLNewBlogger tag can do that.
If you’re thinking of asking for a raise, or looking for a new job next year, in 2016, do these things now:
- Set yourself a weekly reminder, and appointment, at a time when you can spare 15-30 minutes. Use this time to work on communicating, through writing.
- Get yourself a note taking system. You can use OneNote, Evernote, Remember the Milk, or Notepad. As you write queries, set up a system, or solve a problem, make a note of what you did. Pull out that list each week when the reminder you set in #1. Completely ignore anything anyone else has written on your subject and write your own thoughts.
- Make it a goal to get a 1-2 page post done each month. I’d like to think that in 1-2 weeks you can get one done, but find your pace.
- Use the #SQLNewBlogger tag to ask for help reviewing your post (you want good quality) and then finish one post a month. If you’d rather do this privately, have a friend review your work.
- You can get a free blog at WordPress, TypePad, Blogger, etc. You can choose to write and safe drafts forever, or publish posts for potential recruiters and employers to learn about your skills.
- Let us know what you wrote about. Either a link if you’ve published it for us to see, or a title if you keep the content private.
That’s it. If it sounds like a lot, I’d remind you this is asking for 1-2 hours a month. 12-24 a week, to showcase your knowledge, grow your career, and maybe most importantly, improve your ability to write a sentence. We communicate constantly in this business, despite all the code we write, so learn to do it better.
Next year, whether you publish publicly or not, you’ll have 12 things that show you have some knowledge about SQL Server. I’ve got a few references on setting up a blog, choosing topics, and writing better.
I’d also like my fellow bloggers to encourage and cheer on the people making an effort to share some knowledge and grow their careers.
The Voice of the DBA Podcast
Another post for me that is simple and hopefully serves as an example for people trying to get blogging as #SQLNewBloggers.
I had the need recently to get put an extended property on a table in a database. I could easily have done this in SSMS, and have used the GUI before, but since I wanted to make a number of changes for testing, I wanted this done programmatically.
I knew there had to be an easy way to do this, and was hoping for an ALTER TABLE statement, but that’s not the way it works right now. There’s an sp_addextendedproperty procedure that you can use.
This procedure is somewhat of a generic procedure that takes a number of parameters, which are used to specify where the extended property applies. There is a name and value of the property, essentially a key-value pair, and then there are 3 levels of properties you can specify.
Each of the levels has a name and type as well, so this is almost like a hierarchical EAV table. It’s a bit of a mess, IMHO, but that’s OK. It’s nice to have the ability to use Extended Properties for objects, though I wish this were better implemented at different levels and embedded as a core part of your database. The levels are
- Level0 – Should be used for database scope items. For our purposes, we will use SCHEMA as the type here.
- Level1 – The next level and should be the type of object getting the property (table, view, procedure, etc.)
- Level2 – The level that gives the part of the Level1 object, i.e. COLUMN, TRIGGER, etc.
These will change, and there are some notes on BOL, so be careful and read this before you do much.
This post looks only at adding a property to a table, so let’s do that.
I want to add a property to note that a particular table doesn’t need a Primary Key (PK). To do that, I’m going to call my type [PKException] and use a value of 1 to indicate that no PK is expected on this table.
My call for the procedure will be:
EXEC sp_updateextendedproperty @name = N'PKException', @value = '0', @level0type = N'Schema', @level0name = 'dbo', @level1type = N'Table', @level1name = 'SalesTax3' ;
In this case, I have a table called “SalesTax3” and it’s in the dbo schema. Those are my values for the Level0 and Level1 parameters. I can ignore the Level2 parameter since I am specifying this as a table level property.
When I do this, I can then see the property in a few ways, but the easiest for most people is in the table properties, the Extended Properties tab,
That’s about it. If I want more properties, I can add them by changing the name and value of the property in the code above. I can also change the schema and table if I want this property added to other tables.
This was another side post from a separate post I was writing. I was working on solving a problem and needed an extended property. As I looked up the data to solve my issue and wrote code, I copied the Extended Property code and took a screenshot, leading to this side post.
Once I had that, this was about 15 minutes to write. I’ll publish this one first, and refer to it in the post that solved my original problem.
sp_addextendedproperty – https://msdn.microsoft.com/en-us/library/ms180047.aspx
sys.extendedproperties – https://msdn.microsoft.com/en-us/library/ms177541(v=sql.90).aspx
Last week, Redgate Software had a large company meeting and our annual Day Out, with myself and a few dozen of our US employees in the UK for meetings and the event. It was fun, and a good time. I haven’t been to a company meeting live in 6 or so years and I’ve never been to a day out, so I was excited to go.
I was asked to do the opening at the company meeting. Normally our CEO, Simon Galbraith, does an opening and introduces new starters. However with all the US people over, I got to get up first and try to inspire, motivate, and entertain a bit.
Our servery, the canteen where we eat breakfast and lunch was pretty packed on Thursday. I got up and had some fun, showing some images from the ranch of my hard work.
And telling all the youngsters that the worst job in the world was somewhere out there, but not at Redgate.
I think I motivated people a bit and got them excited about the company. That was part of the meeting, and I truly believe that. Of the 10 or so companies I’ve worked for, this is the best one for a lot of reasons, but mostly because people are respected and get to contribute. We have opportunity and responsibility, and it’s a good mix.
Afterwards we had a Nerf war in the two story atrium, which delayed a meeting for me, however it was worth it to watch the festivities.
Everyone was well armed from the Gun Shop.
The Day Out
The Day Out is really a teambuilding event. I got out of a taxi at the Cambridge Rugby Club to see all kinds of tents and apparatus set up.
We divided up into teams of 7-8 people and set about competing against each other. We had some mental events, like safe cracking.
Along with a puzzle competition where we had to use the equipment outside the striped tape to get the black box out of the middle, without stepping inside. That was challenging, and with another team trying, we couldn’t do it.
There were physical events as well. We had a sweeper (like on Wipeout) that we competed against and our team tied.
We also had a tug of war, with two of us tied together with a bungee cord. We had to race in opposite directions for about 20-30 ft. and grab a plastic brick from an inflated stand. I have to say that I lost 2/3 chances I had, but I was proud of the one I did win. My competition was a new salesperson, Colin Tanigawa, who just graduated from the University of Washington. He’s 23, and he played football there.
Needless to say, I’m more than twice his age, so I was glad to take one from him. I got to go a second time, as the other team had an extra person, and I raced against a developer. My team leader got a sequence shot of my on the second try, when we broke the bungee. Fortunately I’d won both, so that was that.
We had lunch, competed more, in ax throwing, dog agility, and more. All in all, a fun day capped by a BBQ. My wife joined me and we relaxed and chatted with people into the night.
I had a good time with my team, and my leader, Charlotte, shown below.
I’m hoping to go back again for another day out.
Across my career, I’ve seen many managers and executives promote and press for IT groups to consider alternative technologies. The mass media has often promoted new platforms and languages as a more efficient way to build software. Some of their claims might be true, but I think there’s a much bigger factor than technology in how well your software is written.
Your employees’ skills are probably the most important influence on the quality of your systems. The technology doesn’t matter if the staff doesn’t understand it. I think it’s even more important to be sure that you can replace your staff. People will come and go in your organization.
I was reading about the development of RavenDB, which is a another platform. It’s written in C#, and the maintainer of the project was asked about moving to F#. His answer, which I found fascinating, was about the supply of F# programmers, both in numbers and cost. There is a lot of debate in the comments, and I find it interesting how differently many people see the world with regards to this issue.
I think about this as we look at NoSQL platforms, or even other RDBMSes. How easy would it be to dramatically port your software to another data store? Probably not easy, and not inexpensive. The time for training and rewriting code would be very expensive, so much so that it’s often not worth the effort. However the more esoteric your choice of platform, the more difficult it can be to find staff that can even manage your system.
I don’t think any of the main RDBMSes have a shortage of talented people, but I do think that it can be hard to find employees in some of the NoSQL systems. While I think most smart people could learn a new system, it has to be worth it to your organization to pay someone to learn a new skill.
The Voice of the DBA Podcast
I heard this quite a bit recently while up in Redmond.
"I have an ask for you"
"Do you have an ask?"
and more. It’s annoying, and disturbing. Hearing that distracts me from the conversation taking place. I keep wanting to say “do you mean you have a request?”
I’m sure there’s no way to stop it, but it reads like poor choice of words, picked to seem cool or hip.
It’s not for me, and it doesn’t encourage me to do anything for you.
This editorial was originally published on June 25, 2011. It is being re-run as Steve is out of town.
IBM turns 100, and in , they brag about bench pressing more other companies half its age. That’s a great headline, and I still remember when IBM was not only the premier hardware vendor of the computer world, but also the largest software maker as well. The “Smarter Planet” ads that IBM puts out there are great, and they are a diverse company, covering so many different industries and locations that it’s hard to comprehend everything they are working on.
The culture and mission of IBM has changed in 100 years, but it’s still amazing that the company has survived. I think back to the tech companies of my youth, and many of them are gone. Who remembers 3COM? Anyone set up a Wellfleet router? DEC becoming Compaq, and now HP. Apple is still around, but Sun Microsystems is disappearing into Oracle. Microsoft is only 30 years old.
I once worked for a hundred year old company, one that embraced and remembered it’s history, even as it evolved in the modern world. The President of the company had worked there for his whole career, taking over for his father that had worked there almost his whole life and still came into the office a few days a week at age 80. There was a sense of history, tradition, and pride that kept people working there, with the vast majority of the company having worked there over a decade when I was hired.
The modern world is fast paced, rapidly changing, and evolving quickly, but there is something to be said for adapting to fit in, while maintaining your mission and ideals. I hope that more companies would look beyond their next quarter or year and make the attempt to build a business that they are proud of, and can survive a hundred years into the future.
This editorial was originally published on Jan 28, 2011. It is being re-run as Steve is out of town.
I wrote a blog recently about downtime and SLAs, and the need to have not only downtime SLAs, but also a data loss SLA. Thanks to Paul Randal (blog | @PaulRandal) for clueing me in to the need for having both. In the comments someone mentioned that scheduled downtime ought not be counted against your uptime measurements. That’s a debate I’ve had in the past with employers, and I thought it would be a good Friday poll:
Should scheduled maintenance be counted against your downtime SLA?
There’s an argument that says since the outage is scheduled, and people are informed, that this shouldn’t really count against your work in keeping servers running. The flip side is that when the database instance is down, it’s not useable, and of limited use to the business.
I know that companies that calculate the usage of their vehicles, and maintenance counts against usage time. While it’s necessary, the idea is that mechanics should be looking to minimize it, and perhaps ensure that extra checks are done when the vehicle is being worked on to help prevent future issues. A similar argument could be made for database servers.
Do you feel that scheduled maintenance is downtime? Is it calculated that way at your employer? Let us know this Friday.
This editorial was originally published on Jun 22, 2011. It is being re-run as Steve is out of town.
Recently Citibank had hackers access a large number of credit card numbers and account details for their customers. It was all over the news, but there was a great piece in the New York Times (registration required) about how this seems to be a nagging problem. We’ve had data breaches before, and banks have had security issues, but they don’t seem to be learning. A number of government officials in the article are quoted as seeking new regulations for data security.
As data professionals, we are often charged with ensuring data is safe, yet accessible to authorized individuals. That responsibility can be hard to manage, especially when our management often doesn’t want to increase our budgets, or accept more restrictive ways of authenticating users or even slower access. I certainly don’t envy the IT folks working at banks and healthcare companies, and am not sure I’d even want to take a job in those industries in the future.
I don’t think that more regulation is necessarily the answer, at least not direct regulation. Technology changes so quickly, systems are implemented in diverse ways, and direct regulation often leads to rules that exist to help some vendor profit, not provide better security.
Whether we get new regulation or not, I think that most of us need to learn more about what security methods work well in our systems, the implications of picking a specific type of encryption, and in which ways we can be audit our systems to detect issues. In the days of limited budgets and apathy from management, a little education is the best way to improve the security of your systems.