 Can everyone hear me okay? Okay. So howdy. So thanks for coming. This topic's, you know, near and dear to my heart, finding information because I feel like when I started learning Selenium it was really hard to find all the good relevant information given kind of I started out as a beginner. I didn't know much and it wasn't very intuitive how to actually make the path from there to actually becoming functional with the tool. So this is a collection of, this is kind of a two-parter, is a collection of the information that I think is reasonably relevant and also just giving you exposure to some things that are out there to give you a flavor and you know with my opinion on kind of whether or not I think it's worthwhile and then kind of a quick section where I'll filter through some of the things to help you discern given your context if it's a good fit for you or not and then after that I have a short little demo for what I think is probably the most important piece of information that you'll want to take away today. So let's go ahead and dig in. So everything I'm going to talk about has a link. It's just this simple bit.ly link. So it's bit.ly slash sd dash info dash and the number. Each item will have a number. You'll see it. So each of these things I'm going to talk about they're going to have a little heading. So I try to group these logically for you guys. So in terms of documentation and tips. So we'll start with kind of the obvious place that most people start which is the Selenium HQ website. It's a little bit dated but there's still a bunch of good stuff there. You just kind of have to get the hang of it to know how to navigate it and find what you need. And I think it's worth mentioning just because it does have a bunch of examples in different languages not just one specific language. So it's worth at least looking through. So I think that in terms of the official site stuff for Selenium the wiki is actually really really good because it has a lot of the documentation that I've used over the years like language bindings for every language they're on the Selenium wiki and they're pretty robust. So it has a lot of just you know the basics and good intermediate stuff at least in my experience for the Ruby stuff I haven't done too much with other language findings. So Selenium wiki is a good one. And then there's my tip newsletter Elemental Selenium. Every week I publish a tip and it ranges from beginner up to advanced topics. Everything having to do with actually writing Selenium code dealing with proxy servers coming up with a test strategy and everything in between. So that's also available. In terms of other things stepping into blogs there's the official Selenium blog and that's kind of where news gets announced. There's not usually much in the way of good tactical information but when you know like when Selenium comp was announced it would be here. The big announcement was made here on this on this blog. Anything to do with Selenium 3 and and so it's a good resource just to kind of keep abreast of what's actually happening in the community. Next up there's actually there's a lot of blogs. So I found somebody that actually aggregated all the blogs or at least I say all in quotes because there's likely plenty more blogs that I know about so but this is a good place to start to get a sense of who has what blog and specifically web driver blogs. In terms of forums there's kind of the standard fare of things. There's a LinkedIn forum. I tend to not pay too much attention to the LinkedIn forum except to go and try and answer questions but I don't really feel like there's a good sense of community. I feel like there's basically people posting questions and not reading the comments. So I actually get a little frustrated looking at LinkedIn forums but it's worth knowing about because sometimes there are some good nuggets of information in there. But most stuff I think people probably look towards is Stack Overflow and Stack Overflow has something like 15,000 tagged open issues or open threads and I tend to go through there and try to find the ones that are unanswered or only partially answered or answered for one language and try to fill in the blanks and so I think that's a pretty good resource. Probably of the forums that's the better of the resources. There's also Quora. I mentioned it only because I have high hopes for Quora. There's some good questions out there that are not well answered yet. So it's on my list. It's just low on my list but there are some good stuff out there too. So it's worth at least kind of getting you exposure to it. So back to kind of more mainstream stuff for the Selenium project itself. There's some mailing lists to know about. There's the Selenium users group on Google. That's also kind of noisy but it's a good place to kind of go and dig for some information too. This is more of like if you can't find it on Stack Overflow, you probably could find it in the user group. And then there's the developer Google group which is more for actually extending and building out functionality features and addressing open bugs and that kind of stuff. And then a little bit off the beaten path, there's the Agile Testing Yahoo group and that's not to say there's anything really tactical in it. There's nothing Selenium specific in this group but it's a good grouping of people in the testing community and it's more of like a philosophical approach and more of a strategic approach. But it's like all the kind of industry giants that go to all the conferences and wrote all the books hang out in this mailing list. And so it's a great source of inspiration and encouragement and that's what I looked at quite a bit when I was starting out doing testing. Beyond that, this was all kind of online stuff on the left and there's some other stuff now that we dig into kind of the in-person options or just meetups in general. So I started this online meetup, entirely online meetup called the Selenium Hangout and I co-organized it with David Burns who is one of the core committers of the Selenium project. And so we basically we hop on Google Hangout like once a month, every once in a while and we talk about a specific topic and we bring in people from the community to chat with them and we live stream it and then get feedback from people and questions and try to really engage with the community and answer and address any issues and that kind of stuff. I actually refer to it as the world's greatest meetup because it's everywhere all at once. So it's worth checking out. But beyond that, there's actually a ton of options for in-person Selenium meetups. There's not any that I know of in India which I think is a great opportunity for you to start your own. There's a blog post that Sauce Labs has on how to actually start your own. Kind of a good guideline for things to think about, how to source a venue, how to actually get sponsors to pay for food and drink, how to get good speakers and that kind of thing. So I definitely encourage people to do their own meetup. So the Selenium Hangout is actually my third meetup I've ever organized and it's been like the best thing I could think of in terms of, you know, stoking the fire of community and really engaging with other people around you and like learning so much so quickly. So there's also videos on YouTube. There's actually Selenium Comp videos from the previous years and I'm assuming this is where this conference's videos, conference videos are going to end up. So it's worth looking at that too. There's also meetup talks. Some of them are pretty old and some of them are more recent. It really depends on if people tag appropriately. So I just searched on YouTube based on tagging and found like hundreds of meetup talk videos. So that's a good resource. So books. There are actually a good amount of books and there's ones I don't know about or just learned about that I haven't had a chance to read so I'm not even going to mention them but the ones that I do know of, Selenium 2 Testing Tools. This is David Burns' book which is the, this is a sequel because he had one for like Selenium 1 Testing Tools which was probably for Selenium RC. So this is for WebDriver and it is a really good book. It's like the book that I constantly recommend to people. It's very comprehensive. It starts from soup to nuts. It covers ID, goes all the way up through to a grid and it has all the best practices that I look for when I do test automation. So that's a good resource. I believe his book is mostly Java. I say that because I think he also had some C-sharp code in there but it's a good resource regardless of the language in my opinion. And then there's Selenium 2 Testing Tools cookbook which I haven't finished reading but from what I've read of it I think it's a great book and it has a lot of good kind of more advanced things to apply to your testing projects. Then I also wrote a book called The Slam Guidebook. The one complaint David Burns told me when he actually published his book and got people reading it was that his book didn't teach people to program. That's a tall order to include in a book about Selenium to also teach someone a program. So you'd have to be crazy to try to accomplish that in a book. So I did that. So my book also teaches you enough, like the programming concepts you need to know as well as a test strategy and steps through the whole life cycle of building out, starting from one test all the way to a fully scaled, parallelized cloud execution that's plugged into continuous integration. So that's available as well. And then Selenium Simplified. This is a good resource because it's more than just a book. He actually has several books. Evil Tester I believe Alan Richardson. And so he actually has Java for testers. He has a book for Selenium RC but he has this more recently published set of videos, which are very comprehensive. So it's the closest thing I can find. It's the equivalent of what my book is but my books in Ruby, his is in Java. So I think his video is what video course looks pretty promising. And then for people that aren't aren't knowledgeable about Java, he has Java for testers, which is a good book to kind of get people ramped up. So Selenium Simplified. And I actually think they sponsored lunch yesterday. So thanks for lunch. And there's a new book coming out, which I'm super excited about. So Dima Covalenko, he did the Selenium Grid talk in the Selenium Grid workshop. So you might have already seen him or met him. But he wrote this book, Selenium Design Patterns and Best Practices. And I was a technical reviewer for the book. And I think it's a tremendous resource for both beginners and more advanced people. There's a lot of really good stuff in there. And his approach is just so spot on. So I think there's the last of this, which is worth telling you about, where I think are the good things, where you'll find kind of the real meat of the information that's out there. And so the Selenium Issue Tracker is is kind of important, right? Like if you ever start writing a test, and you it should just work how you think it works. And then it doesn't. It's easy enough to go into the Issue Tracker and kind of search around to see if there is a bug. And nine times out of 10, in my experience, it's easy to find, oh, there is a bug. There is an open issue for something. And then if there's not, you can submit an issue. But before you do, I think it's worth reading a blog post from Jim Evans on how to submit an effective issue and what that entails. Because sometimes, most times, I guess it depends, but it could be something specific to your app, something specific to your setup. And this kind of helps distill that down to make sure that you're providing enough information to help the person who would look at the issue, debug it, and be able to actually effectively fix and help you actually address your issue. Aside from that, the actual source code on Google Code has a bunch of stuff beyond just the source code, like links to other things within the project on Google. But the source code is kind of where I like to go just to understand if there's a way to do something that's not easily understood through the documentation. Because the bindings are only going to cover so much. The bindings documentation will only cover so much. But the source code is kind of the single source truth. But what I think is probably the most important resource is the Selenium IRC chat channel. It's where all the committers, a bunch of people who actively work using Selenium, they hang out on this chat channel. And this were things about the project it talked about, where releases happen, where people can go and ask questions of people in the community. It's like the single best place I can think of. It's like if you have a question and you're frustrated trying to Google for an answer, or you don't see something in the issue track, or you're not sure what to do, you feel overwhelmed, you don't have to because you can just log into the IRC chat channel and just ask your question. And somebody will just wait and eventually someone will ask your question to help you out. So these are all the resources that I know of. There's no way that I can possibly have a comprehensive list, but these are the things that I've looked at that have helped me along my way. And so to kind of help filter, I try to look at things through a lens of getting started and then people who are further on their way. So in terms of if you're more of a beginner in the getting started phase, that kind of help, there's a couple things that get filtered out here. So like the testing tools cookbook has some more advanced stuff going on. You know, dealing with source code and issue tracker may not actually be something that you're going to want to really deal with, and then the developer group is clearly not something you're going to want to dig into. But documentation and tips, logs, a lot of the forms, those will be super helpful. My guidance would be if you're going to look to buy a book and figure out which language you're going to use and then pick one. The Slime2 testing tools, Java, SlimeCypify is Java. My book and Dima's book are in Ruby. I'll caveat that with I think that the concepts and practices are kind of our language agnostic. So the reason to get the book is to really see and get guidance on technical and tactical implementation. So other than that, like the videos are always a tremendous resource. And meetups are probably beyond that the next best thing. So if you guys have access to meetups or want to start a meetup, I think that's a great one too. In terms of more intermediate to advanced, there's a few I want to highlight. I think that if you're looking to kind of really dig in, the testing tools cookbook would have some good stuff in there to kind of help up your game. The developer group is a good resource. And then on my tip newsletter, I actually have a series of advanced posts that I'm slowly adding to you. So there's probably like a half dozen so far. And then beyond that, digging through the source code, going on the IRC chat channel, I feel like the IRC chat channel is blanket for everybody. It's useful regardless of your skill level. So I just wanted to, before we kind of move on and get into potentially questions, I want to close with just a quick little video. I'll show you how easy it is to connect to the IRC chat channel. So IRC, it's internet relay chat. It's like an old school chat mechanism. And there's a bunch of different ways you can connect to it. You can actually download a client and configure it. Or you can go through a web app to do it. The Selenium IRC chat channel is on the FreeNode server. And once you connect, it's just pound Selenium. Every chat channel starts with a pound. And then, ta-da, you'll be magically there. So this is just a quick video of showing how to, there we go. So you have to choose a nickname. And then after that, you plug in the channel name. And this is just the one that comes for web chat. So plug in the capture, hit connect because it does its thing. And this will auto connect you to the chat channel. And then after you're in here, if you want to see who broke the build, you could just type in who broke it and it'll tell you Simon Stewart. So I think he always breaks the build. I think that's always gonna be the answer. So that's, I would say that if I can just beat one horse, one piece of information over and over and hopefully impart you with one thing that you're gonna take away and definitely do, it would be connect to the IRC chat channel and just get familiar with it. And just keep that in your back pocket. Cause that's the, I think the most underused thing that's the most potent of all the things that you could do. Cause the people in there will help point you in directions to help you find information as well. So it's been probably the single greatest resource I've found besides coming to this conference. So that's pretty much it. So I will post the slides and tweet about it. But I clearly think that there's things I don't know about that you guys do. So if you think I missed something or have just something you want to share, I'd love to hear about it. So I'd love you guys to get in touch. So I'm gonna tweet about the slides after I post them on SlideShare. And then you can email me directly and you can check out my site where it has kind of everything I'm working on. Also there's a link to my office hours. Every week I have open office hours. So two hours a week has had aside 30 minute sessions to hop on a call. So any questions about testing, whatever, you can schedule a time with me and then I'll hop on a call and we'll talk about it. And if it's like, it could be pair programming, it could just be chatting about something and that's it. I can help as available as I can to the community because I'm just trying to help as best as I can. So that's it, any questions? Can you see that one more time? Sorry, I couldn't hear you that well. Oh, so in terms of other testing tools, so the question is, is there any sort of resource that I know of that puts Selenium into a broader context? I think that there's like how it fits into like a overall strategy for tech. I think that the best way you'll find that is like talks like Nuresh's talk earlier today about inverting the testing pyramid. So I don't think there's a lot of good resources about this, but I think it's a big challenge that organizations have. And given that you're a consultant, I think you run in these challenge too. But what normally happens is, yeah, companies want to just automate everything using Selenium potentially and I think that that's very dangerous or they see that it worked for this one case, so let's do it for all cases. But having kind of a good understanding of what Selenium is really good at and how that's like when it's done in small doses, it's more effective and it's easier to maintain and then slowly growing and over time. I haven't found one killer resource that just says that. Aside from, I mean, I write about it in my book and I write about it on my tip newsletter a little bit, talking about testing strategy and focusing on certain things to understand about your business and how these fit, but I don't think anyone's really nailed it yet. So it's just, I just kind of, I have experience to know how it works, but I have no resource to point people to, unfortunately. Yes? It's an official Selenium blog, but now it's not being updated as often like in the last four months, we've got only two updates. And it was a very good resource to get in feeds of different things. Are you talking about the smattering of Selenium, the blog posts that Adam Gautra would do? Yeah, it was like every, so your question is like, why are there not regular updates about what's going on in the industry? Yeah, so yeah, I think that, well, the Selenium community is just a series of actions by interested parties and the person who is doing that took a full-time job that's very demanding. And so my impression of the situation is that it's just something that isn't getting done because he was the only one doing it. But I definitely think that there's value in doing it. So it's just a matter of figuring out how to do it and paying attention to it. So I could see it coming back. But for right now, the best thing, the most, the closest equivalent is when we do a Selenium Hangout and we post the recap, the meeting minutes from that plus the video. So that's like, because we talk about general news when we do those, but we haven't been regular about those either. Just because with the W3C SPAC, David Burns is really busy, plus he works at Mozilla, so he's pretty busy. And then with my travel schedule for conferences and whatnot. But it's a, those are lame excuses. So I think that there should be more regular updates. So if not the Hangout and doing something like the smattering, that would be a good thing to bring back. Yeah. I'm now an HTML unit driver and it may be deprecated. That's what I heard. What would be deprecated? HTML unit driver. Oh, HTML unit driver, okay. So the interesting thing is, how do you hope, how do you keep us updated? What might go away for the future? So the question is, how do we keep the community updated with what might be going away and be deprecated and so on. So aside from, I guess the blog would be one place that you'd potentially see that kind of news if it's a big change. Short of that, there's a change blog and then there's State of the Union that Simon does every year about changes. I'm trying to think of, do you have any other thoughts, Jim? On the Google group, that would be the best place to find that information. Yeah, as opposed to being surprised when you download the latest. I'm feeling like what happened? Okay, yeah. Did I answer your question? Okay, great. Any other questions? You said you were gonna ask a question. Say, how do you register the Hangouts and what's the? Oh, so the Hangouts, there's no registration. Your account to follow and we've published the link there and then you just hop on a YouTube live channel and just watch it and then you submit feedback and chat with us. We're thinking about different formats potentially too but that's the best place to go. And then if people have questions we have an email address and stuff like that. But it's really late wait. So, what time is it right now? I don't know what time it is, the Hangouts are right here. I've never gone in there. So the times that we typically do, we try to, first off it has to both work for us, clearly. But we try to schedule it where it's reasonable for, probably not Australia. So, sorry. So we do it at four in the morning our time so no, I'm just kidding. We don't usually. So we've done it typically where it works for West Coast, so the San Francisco all the way through to the UK. So it's like cover at least that wide of a swath. And then we've toyed with trying to do later hours that could at least accommodate 12 hour time differences. So we're still toying around with it and every time we just try something new and we try to gauge feedback. So, but the video gets posted after. So it's always available and we always do the meeting minutes. And so if you go on the SlendimHQ blog you can see all the blog posts from the last five hangouts that we've had. And then that's just, yeah. So it's always there. If you miss it, you get a recap. Yeah. So the Twitter account for it is at SlendimHangout. Yeah, and so the link that, once I post these slides, you'll see it. But there's a blog post that describes kind of the whole format and the links to the Twitter handle and all that. So, yep. Okay, I guess one more question or no more questions. Cool, all right. Thanks, everybody.