Okay, well, let's see here. We're gonna try to stay on schedule. I know we're gonna keep moving on right on ahead. I've got a couple of minutes after 9.30. We got the agenda here. So, we're gonna see how we proceed here. And of course, you know, small turnout, no blue, no surprise with it being weak and thanksgiving. Are we recording now, John, or we're going? We're going, okay. I've got my agenda right here in my pocket. All right, so, weak of thanksgiving, small crowd here, but of course, give thanks, weak of thanksgiving here and thanks for my colleague and wonderful colleagues for attending and presenting and working with this again. I believe this is the third time we've done this. It gets better and better each time and that's the way that we should do that, get more experience and things come together, you learn from your mistakes and you live ahead. And so, anyway, I want to welcome all of you. Come on in, welcome to the workshop here, how UA Library is, this is your publishing. Got tools, techniques, and tips. And as you're coming in, we've got a signed up notebook up here at the front if you will, put your name and your email address on there and after the presentation, maybe after Thanksgiving, but I will send you a follow-up email and if you would like to receive a copy of this presentation, audio, video, copy, we're recording this today. So we can send that out to you and there will be people, it's been the past, they contact me afterwards and say, I really wanted to be there, I could make it, was it recorded? Well, like I said, this is the third time we've done this and the second time we've recorded it. So it's, we will get a recording out too. So we appreciate you and your interest and we appreciate your patience with us as we get this pulled together and it's just wonderful, the technology that we have here and again, like I said, my colleagues, we've got John Eatzel over here, he's working with the technology, he's pulling this together and I thank him for doing that and then I want to thank my colleagues, my co-workers here, I've got Karen Chapman, she's a director of branch services and she will be one of our speakers today and then we've got Ben Scalfani, he works at Science and Engineering Library and he's another one of our speakers and we also have Sainte Hume and she is with the Department of Human Nutrition and Hospitality Management and her specialty is in nutrition and of course that's very relevant with this way of Thanksgiving and I tend to eat a little too much, the good sweet stuff and it's not very nutritious but she's got that, maybe she can give me some pointers on what to go for that's very nutritious. All right, and so as we're going throughout this, if you have any questions, feel free, this is sort of a drop in, drop out and you may have other commitments that you have to go to so we want you to be able to get your questions, we will have time at the end for a Q&A but personally the way I like to do it, feel free to stop if you've got a question along the way but like I said, we will have time for Q&A at the end and always you can follow up with an email or a phone call and reach out and touch so that's fine. So my name is Paul Brothers and I work in the Brennault Business Library and me and my colleagues, we all have varying levels and degrees of experience with publishing and so we want to present some resources to you today, we've got several databases the University Library subscribes to, we have access, if you're affiliated here with UA so we've got these resources that you can use to help these tools that you can use to help with your publishing and then each of our speakers will give you valuable information based on their personal experience with publishing so this is a really rich time of learning about the resources, some of the resources we have here for you and then getting firsthand experience, firsthand knowledge from those who have published and aren't publishing and look to publish in the future so it's a great opportunity and so we're talking a little too much so I'm gonna go ahead and try to stay on schedule and our first speaker is Professor Karen Chapman and I'm turning it over to her now and I appreciate your patience and we're here for Karen, thank you. Thanks, Paul. Now Paul asked us to share with you our background so my first slide here is a little bit about myself who know my credentials and how I feel like I have some things to share. I did make a mistake on this slide I'm so sorry it's four editorial boards, not five I got a little carried away there so I have published throughout my career and I now serve all these editorial boards and I review for several journals both in business and library science so I'll be telling you some about tools and tips for getting published and also in a little while tell you sort of what the reviewer's point of view is and what happens when you submit your article what the reviewer's looking for. Okay, let's start off with something really basic which is the format of a research article that outline that you see on the screen right there is very standard, very typical. This is, you know, almost any subject you're gonna see a research article organized like this. You'll have the introduction where you're gonna explain what it is that you're researching and wanna explain why it's important and then the literature review where you're going to give an overview of the literature that's related to what you did it may be that you will also wanna cite articles that use the same methodology as what you did. Then at the end of your literature review you need to explain how your research builds on this prior work. All right, then you'll have the methodology when explaining enough detail that the reviewer can understand exactly what you did along the way. Again, if you're using a methodology someone else developed then go ahead and reference that inside it. Then you wanna give your results and then the discussion sometimes these are combined sometimes it makes sense to combine them for it but I think in most cases what you're gonna see is just presentation results and then you'll have a discussion section where you'll talk about the implications. What do those results actually mean? Did they answer your question? What do they tell us?  Was there something about your sample? Was it something about your research question? Is there something you didn't weren't able to address and then suggestions for future research? What would the next steps be? So all of those are typically contained in a research article and laid out in that very much in that order. Okay, I'm just going to kind of describe a little bit about the process, the thought process you're gonna go through when you're working on your publishing. The first thing you wanna do is make sure you have a good idea something that you're really interested in because you're gonna be spending a long time working on this. Articles do not come quickly. So make sure it's something you're really interested in to get excited about. Now I do recommend that you choose your journal very early on, even as you are figuring out what you're going to research. Because it's really gonna be helpful to you if you know who your audience is going to be when you do your article. If you wanna think about who would want to know about this, who would be interested in this research and then what journals serve that audience? The other thing is that you wanna review the author guidelines for that journal and make sure that what you do, what you put together as a final product fits what they're looking for. You wanna look at issues of that journal just make sure that they're actually publishing articles of that type or similar articles and then you'll know that they're gonna be more likely to accept what you've done. So I didn't find that journal early on is gonna be really helpful to you when you're putting everything together.  Look at the author guidelines. So you know I'm gonna say this over and over again. I think the other piece is a lot too. Check the author guidelines. Because the author guidelines are really your explanation of all the pieces you need to produce. Do they like graphs? They don't like graphs. They want photographs? They don't like photographs. Look at other articles in the journal. Go back and check the author guidelines and make sure when you're preparing your article you set it up the way that they want it. Some articles, some journals will say, for example, when you prepare tables go ahead and put them in with the text and submit one document. But others will say, now we want each graph or each table to be its own document. And that sounds kind of like a minor thing but when you're putting everything together you need to make sure that you set it up correctly. So check the author guidelines and make sure that you're doing what they've asked you to do. So if you reach a point and you check the author guidelines you have all the pieces that they've asked for and you submit. You're probably gonna do that in the electronic submission platform. They probably have a link you click on. I'm actually on the editorial board of a journal where they don't do that and you really just email a word document to the editor and that's what you do. But that's pretty rare these days. Most publishers have an online platform where you go in, you fill out a form and you upload your files. Okay.  And it may be smaller vision and maybe larger vision. We're gonna talk about that more later. We're talking about most of these pieces later. So this is just the overview. But then you will need to respond to what the reviewers have asked for and you might have to go through this process more than once. You might do a revision, send it back. They might want more revisions. Then you'll have to do that and send it back. But just keep doing that. As long as they are interested in your article and they keep giving you suggestions just keep improving your article until it reaches the point where they're ready to accept it. Okay. Let me repeat again. Choose your target journal early. I have found that to be really key because it helps me know who I'm writing for. So as soon as I write that introduction, for example, I know what audience I'm writing for. It's the readers of this journal. The journal explains their scope and so I understand who these people are I'm writing for and that way I can write in a way that's going to appeal to that audience. I really like this tip to write as you go. I did that once. I had a co-author who had mastered this and I was working with her and we would, she had some ideas that she pitched to me and I said, yeah, I'd like to work on that with you. She'd already done the introduction. And as we did the lit review together, she was writing that lit review and as we were collecting the data she was writing up the methodology and when we were finished I sent her my results and she plugged them in and then we discussed what it meant and she wrote that up and hit the conclusion and submitted and it was so smooth and wonderful and fast and I thought, wow, I should do that every time. Haven't done it since because I just don't have the self-discipline to do it. Honestly, I'm really bad. I do the whole thing. What appeals to me is not the writing, what appeals to me is figuring out the methodology and doing the data collection and then seeing an answer emerge from the data. That's what is fascinating to me, not the writing.  Let me tell you, that's not the way to do it. So take some advice and try to write pieces of it as you go. Okay, the title needs to be clear. I know people think catchy titles will get attention but if people don't understand what your article is about they might look at that catchy title and think, oh, that's clever. I wonder what that article is about and then they're not gonna click on it. So think about something like Google Scholar. When you go into Google Scholar, you see the title of the article and then maybe two lines. So you don't get much help in Google Scholar with people with them telling people what your article is about. Your title leads to tell people what your article is about if you want them to open it and read it and use it. So make sure your title is clear. If you use that subtitle and really pin down what you're talking about in your title. And then my last suggestion would be to use a good professional name. Think about from the very first publication to be consistent with what name you use. Think about using middle name or middle initial to distinguish your name from other people. That's something no one said to me and I didn't use a middle initial and now I have all these publications with just a first and last name. Unfortunately, you would think Karen Chapman wouldn't be a terribly common name, but it is.  So if you want people to be able to identify your work and know who you are, make sure you're right from the beginning and figure out what your professional name is and use that name. Okay. Now there are two things that I want to show you very quickly. I know I'm running over time, so I'm trying to go a little faster here. All right, two tips that you need to know about. Staff directory on the library's homepage. Now I hope you've all seen the library homepage before. I don't know if you've ever paid attention to staff directory. When I click on that, I get this nice page with members of the library staff and librarians and what I want to bring to attention is this little liaison area where you can choose a subject. I clicked on that and this is the box and I got, so now I can choose a department. They should pretty much line up with the university departments. We can choose a department and see who the librarian is, who is assigned to that department. So I see James Gilbreath is the librarian for the Advertising and Public Relations Department.  And he is absolutely at your service. If you are stuck trying to find a document, if you need to know, you know, maybe you're trying to do your literature search and the searches don't seem to be pulling up what you're expecting, talk to your librarian, the librarian knows how to do searches in your databases. The librarian can't give you advice on which databases you ought to be in. So this person is very much a resource person for you and they will welcome you coming to them and asking you for assistance with your research project. Okay, the other thing I want to show you is a database. I'm going to go to research tools and choose databases. And the one I have in mind is called Sage Research Methods.  This is a very special kind of database. This is not the kind of database that you search when you're doing your literature review to find articles. This database is for researchers. So what it has in it is materials to help you do your research. So we have a nice search box and I know the temptation is to jump right in and put something in the search box but I'm gonna scroll down the page first. Here are the different types of things we have here. They have books, they have reference books and psychopedias, they have videos, books about qualitative methods, books about qualitative methods. The cases actually illustrate different methods. So if you think you're going to do something, let's say you're gonna use focus groups and you'd like to see where someone else has used focus groups and kind of how they set them up and how they reported it, go into cases and they will show you some examples. Data sets, if you're gonna run a statistical test you're not familiar with. Go in here and find some place where they provided you with data sets and you have all this data you can practice on before you get your data. And then project plan or we're gonna look at it in just a moment. And they also have podcasts. If, you know Sage does mostly cater to social sciences but you can see from this list of subjects they do offer things for other subjects as well. So you can even click on this and see the most used and most likely things are your particular subject area. All right, now let's quickly do a search and I'm gonna use my focus groups. Let's see it one more time here. And it gives me definition and now you would see the very first one, focus group methodology. So it's telling me how to use focus groups. You can limit it over on the side. We have not subscribed to every single piece of this database. You might wanna click on available to me to make sure you're actually gonna be able to see what's here but if the focus listed there you're gonna be able to see it on the screen. And then you can also break it down if there's a particular type of thing you're looking for and you can use these filters to break it down. Okay, let me also show you a few more things in the research tools. I'm gonna skip over the methods now. Reading lists, you can actually say these things that are useful to you in a list and give it a name. You can make that list public. So for example, if you're teaching a class and want your students to read some of this stuff you can create a list, give it a name and then put a link to it in Blackboard Learner. You can also read other people's lists. So if someone else, maybe you're doing focus groups and you think, well, I wonder if someone else has already pulled together all the best stuff on focus groups. Go in and see if somebody created a list on it. Project planner, I did wanna show you the cause. It's basically like what we're doing today. It's the steps in your research. When you click on something, it tells you a little bit about what you need to do at that stage in your research. It provides you with all these questions and the answers. Do I do a little bit of it? And here's a brief answer and then most of the time they will provide you one of these lists where you can click on it and it will pull up some helps on how to do whatever they're talking about in that question. So this is a really nice thing to do too. If there's a stage in research you're not comfortable with you want to go up there and get a little more information on that. And then finally, sorry, research tools, which stats test if statistics is just not your thing? This might be of some help to you because it just walks you through these questions. I'm just gonna kind of randomly answer here. And when you get down to the end, I'm just taking the first one each time and see where that gets us. Then it tells you what test, what statistical test they recommend in that situation. So that could be kind of helpful. And then of course each one is a link. You can click here to get lots of sources or you can click on the specific discussion points that they've raised there. Okay, so those are two really good places to look to get information on how to do your research and that's your librarian and sage research methods. Arrange the content and write up your citations. So there's quite a few of those. So each journal will tell you that here you can compose your work, all right? You also have these filters over here. So these are very helpful. I'm gonna encourage you to take a look at these. These are that drop-down box here. Let's just quickly go over some of these. So you can get into the content by these different filters, the disciplines here that they have. And you can see they cover a lot of different such areas. Counting, computer science. And then I've got these different topics here under these disciplines. So you can find really quickly what type of journal you can submit your work to. So it's an amazing and very deep and wide area of publishing. There's a lot of different ways that you can get your work published. Thousands of publications. So you can see here one on this list. Again, some of the disciplines, computer science, economics, and finance. There's health administration, management. I'm just naming a few that was just quickly kind of glossing over some of this nursing. And then again, like I said, you got your topics over here, all right? I'm not gonna cover each of these aspects just for sake of time. But we've got also here an impact factor.  So you can specify here the impact factor of your publication. Over here, they've got these peer reviews. So these are the different types of publications here. And I like how they quickly identify the types of what these are. You would throw these terms out in the library world. Blind reviews, double blind reviews. So basically on the blind review, the reviewer identity is confidential. So you're submitting your work to that journal and you don't know who is reviewing, okay? That's anonymous, my friend. And in the double blind, not only is the author, not only is the reviewer identity concealed, but that reviewer doesn't know you. So there's both those opportunities there to provide for that anonymity there, okay? And then there's of course the editorial open where both the author and the reviewer the identities are known. Over here, this is an important aspect here, the open access. This is something that is real brief for you. The libraries were really encouraging. Office, future office, to consider open access, to think this is the way of the future and believe that it is. And if you are publishing something that is published with grant money, typically it is taxpayer supported, grant funding. There are requirements that your publishing has to be open access, it has to be available for other taxpayers to see what type of research you've done. So they don't have to go and pay to access your article, they should be able to freely access it over the internet. That's what the open access is. It's available that anyone can obtain it through the internet, they can get to your content. And one of the reasons why libraries are really strongly encouraging this is because the cost of accessing these thousands of journals that we have access to through the databases, being as covered earlier with science and scopes, whether those don't actually have the content in them but they have the links out to the content through other databases. But one is it's very expensive for the libraries to access this content. We have approximately 600 different databases of the libraries subscribed to, plus approximately 100 software packages if we can use the various things, statistical software and just it runs again, but it's very expensive. Several million dollars per year to have access to these databases is very expensive. So we want to be able to provide the content that you can see the content, the cost is just, and it increases every year, the cost just continues to go up. So with the open access, that will allow more people to receive the content and receive it with much lower cost. But it's still, we're still a long ways from getting to that where all the content is completely free to access. So it's a model that's changing. But anyway, I really encourage you to explore that these are the different types of open access models that are currently out there now. So really encourage you to publish your work in an open access fashion. And we also, we're really covering that really here in this presentation that we have an institutional repository here at UA and it's a great resource for you to explore that. There's a lot of really good research articles in there, research content. So take a look at this call for institutional repository. So, this open access. All right, so over here with the emails, just quickly, I'm gonna put in a publication. Again, there are thousands of publications here. So one of the publications that we use, and I published again, is the Journal of Business and Finance Laboratory, okay? I'll bring it up right there, okay? So here's the publication. All right, so this is very specific to my area of, okay? So this is where business librarians like myself, we, this is one of our talk here, John, okay? So this compels for equity, tells you some things about Journal of Business and Finance on Berkshire. Okay, and again, we can access a profile like this for thousands and thousands of publications here and compels, okay? I'm just using this as an example. So some of the things that you can find in here, and again, just scratch the surface to have time to cover all of the aspects here. But they tell you some things about where Student Publisher is, Taylor and Francis, was published quarterly over here in New Balthus for a very long period of time. Look on the metrics, look on contact, the information the publisher, but it tells you about the disciplines here, educational and technology and library science, economics and finance, okay? Some other disciplines that are published. It's an academic, that's the audience, in published quarterly. It gives you the International Standards and the serial number, okay? When the publication was started, 2019, tells you about the publication here, okay? Some more content about the journal and who the audience is and what typically the types of articles they publish, okay? They tell you about the submission, the guidelines here, so they publish on the web now, okay? The length of the articles, the length of the publications, the percentage of the invited articles, you need the acceptance rate, okay? The acceptance rate, that's a pretty good acceptance rate. Some publications have a very small acceptance rate, 5%, I don't usually. The Style American Psychological Association, APA, okay, it's a double blind, peer-reviewed publication, typically two, three months to review it. They send you comments, okay? They scream for plagiarism, but you've got here to the journal website, okay? Need help preparing to manuscript, lots of links on here, very helpful resource, okay? And then they've got these other metrics up here, you can take a look at these and explore more items about the content, how they do the rankings and that sort of thing like that, but a couple of things too, when you're in academia, you're in your department, usually your university, your college, will have certain publications that are relevant for your particular field, somewhere your authors and your colleagues have been publishing and they're geared toward a specific discipline, and sometimes expectations may be there that you will publish in those particular ones, so you can go in here and you can use something like the Bells and you can get that information about those specific publications, just enter the name of the publication and get to that directory, use the profile information for that particular publication. So you can see, again, it covers a lot of different disciplines, but it's profile information about the thousands and thousands of academic genres where you can publish. All right, so, I'm going to go to Karen and she's going to give us some information on the reviewer's point of view now. Now, when you submit your article, reviewer is going to take a look at it and do you need it for your publication or not? So the reviewer is kind of a bad guy in your process, because this is the person who stands between you and a published article. However, reviewer is really just trying to make sure that your article is, that your paper is well-prepared and there's something that's going to convey good positive information to the readers. So try not to think of the reviewer as the bad guy, although it's hard not to do that. So you can see on the screen some sample questions. We're going to tell you a little bit about what actually, how it actually works from the reviewer's side. So you're going to submit your article for some kind of electronic form or upload and everything. And the system will probably, if you submit multiple documents, the system will attach them together and create one PDF that has all of your text and your charts and everything in one place. Then the system will, the editor or one of the system and the system will probably identify some suggested reviewers based on keywords you might have entered. You might have been asked to supply the names of reviewers in some fields that's common. So the editor has to decide who's going to review it. So they use their system or their own, the system or their own knowledge of the subject and who the reviewers are. And they select the people or they put their names in. The system sends that person an automated email and says, your name has come up. Would you be willing to review this paper? And it gives the title and the abstract. So the reviewer has a little bit of information to look at and say, yeah, this is something I'm good at reviewing, I can do this. Occasionally I've gotten these emails. I look at the abstract and think, why did they think I was qualified? I can't possibly make reasonable comments on this article and I have to say, no, I'm not going to review this article. So you get your reviewers, they're often two or three, three is pretty common. And the reviewer gets the paper and they're told a deadline. Usually the reviewer is given three to four weeks. That's been my experience, three weeks, four weeks. So the two or three months it takes to review is not the reviewer in the whole time. Some of that is the editor in the paper working its way through the system. The reviewer probably has three weeks or four weeks to actually review the paper. The reviewer also has normally a form to fill out. These questions on the screen are some of the ones that the reviewer is expected to answer when they provide the review. So I've seen this in several different ways. Sometimes it's just a straight question with a box and you can type in your answer. Sometimes it's a rating. For example, it might be a sentence. The paper presents something new and then you have to agree to disagree on a liver scale. Somehow or other you have to provide responses to these questions and there are basically standard questions for each publication that the editor has developed. So you can see the questions. If you are thinking about these questions when you write your paper, you can make sure that your paper answers them here clearly and that way that will make life a lot easier for the reviewer and make it more likely the reviewer is going to approve your paper. The reviewer also has an opportunity. There's a box to fill in where they can send comments directly to you that are not part of this question answered thing. And they also have a box that they can fill in where they send confidential comments to the editor. They suspect you plagiarism or they think something's wrong. They might use that editor box to put that in occasion. Usually what I do is just put everything in the comments to author and then the comments to editor are just say, see the comments to the author because I don't really have anything confidential to the editor. So the reviewer is looking for all these things that you see on the screen. I'm agreeing to you but I do want to emphasize the last one, that's so what question. Don't overlook that one because your research needs to contribute to someone. It needs to have some kind of meaning. It needs to advance your field, create new knowledge. If you've done something that, you know, there are things you can do that maybe you shouldn't do. Let me give you a kind of good example. Doing library research, maybe I did a study on old found journals and stacks and what colors they are and I've done a study that identifies with the predominant journal cover color is from the different subject fields. Wow, I've gathered my data and I've run my tables. I've done my analysis. Who cares, you know, it doesn't matter what color or reason the journals are. So make sure when you create your research question that you know how it's going to contribute to the field and make it really clear in your paper. Usually it happens that a viewer says, yes, this paper is fine exactly as it is, except. And if you can get multiple reviewers to say that at the same time, wow, that's really good. That is not happening very often because human nature being what it is, if you've got three people reading the same paper, at least one of them is going to have a suggestion about, oh, well, that table should have a different name or if you should create this additional table or something. So it's really more common. That can be hard to take because I know I've had so many times when I've said, when some of the reviewers says, you didn't comment on such a, so you didn't read this out. And I think, okay, can you read page three because that's where I've covered that. So you have to kind of think about what the reviewers say and honestly, Ben is going to talk about response to reviewers, but you do need to carefully consider what your reviewer's talking about. If he thinks you didn't say it, then maybe where you put it in an article is not the best place to put it, but you need to rearrange your article. So think about revisions, think about them carefully. If they're minor revisions, I would say, again, I'll let me cover this. Sorry, try not to step on your part here. Think about them carefully, but do try to get on with them and get your articles turned back in. Now, when I've talked about this before, I've been really consistent on drop everything else you're doing, get that minor revision done and get it back in. I was talking to an editor friend of mine, he said, you know, you don't want to send it back so fast that it looks like you didn't really even pay attention to the reviewer's said. Oh, okay. So now I'm going to say, give it a week. You get that review back, read it, set it aside, come back to it in a week, and think about it. And then, though, if it's fairly minor, go ahead and do it and send it back. All right, but make sure that you do pay attention to what the reviewer said. It's a major revision that really, really changes up everything you did, changes your methodology, means you've got to flood your data.  And then sometimes you get a flat-out rejection. And that could be because you didn't answer that so-what question very well. It could be there was a fundamental flaw in your methodology that you didn't even realize. It's a learning experience, so you've invested in this project, so you'll have to just stop and think very carefully about what do I do now? I'm gonna start over again. Or do I count it just as a learning experience and you want something else? So hopefully, you will never have to deal with that. Okay, yeah. Cover letters are, I think, unfortunately, sometimes an afterthought, and generally when you go to submit your manuscript to a journal or an editor really or submit it to, they'll ask you to provide a cover letter. And so what I've done now, as I'm writing manuscripts, I try to come up with a couple of goal points as I'm writing that I know I want to talk about a cover letter, and that works out well. And a lot of times, as Karen was saying too, sometimes manuscripts can be really great and rigorous, but they get rejected because they're outside the scope of the journal. And so, sometimes you can start kind of explaining your cover letter and how your particular article fits within the scope of the journal. So cover letters are for the editor to read, okay? As a peer reviewer, I've never received somebody's cover letter. So they generally stay with the editorial office. And it's their, I'm not an editor, but I'm assuming that you use these as sort of a pre-screening, it's your opportunity to kind of pitch your article to the reader. And so, how I've always approached this and documentation I've read about cover letters is pretty standard, you know, please consider this manuscript per review, you can list the title and the different co-authors on it, if any. Tell them, you know, an overview of a manuscript in two, four sentences, what it's about and how it fits into the journal, what the major results and significance of the manuscript are, and then, you know, you can have some concluding sentences. You can also, I was talking a little bit about the scope, just kind of explain how it fits into the journal and who the audience is would potentially help. A lot of times journals, on the submission platforms, they'll make you answer a couple of questions. They may ask you to confirm that you have not submitted the manuscript simultaneously to two journals, and a lot of times I'll add that cover letter as well, and this hasn't been submitted elsewhere, it's only been submitted to your journal for consideration. So, my tips are that they're really important because it's likely the, I don't think I'm gonna sit there and read the entire article, right? But when I start with the cover letter, it might skin your article, okay? So, it's the first thing that they see, just spend some time on it and really try and sell your article to them when you just cut the letter. Generally, half a page to a page, at most, I would say, you don't want a 10-page cover letter, right? Because you need 10 pages to tell the reader how important your article is, it's probably not that important. Maybe it's really, really important, you should just put that in the manuscript. Okay, the submission process, as Karen talked a little bit about this already, pay attention to the author guidelines. Even the same publisher, the different, each publisher might have several journals, even journals within the same publisher have different guidelines. So, you have to really be careful and pay attention to them, and these are things like cetaceans, styles, they're usually a little, they seem like little details, but they could be important for that particular journal for editing processes. And also, it doesn't make any peer reviewers happy if you don't follow the guidelines, right? You have sections that are mislabeled or missing or figures that are not correct for that and so forth. So, make it easier on everybody to by follow the guidelines. There's lots of different submission platforms. They vary tremendously. I would just encourage you to set aside, when you're ready to submit, you've got all your materials ready, set aside several hours to do this because it can take a while to register for an account, to upload all of that information. It's apparent that sometimes you'll go into the submission platform and they'll want you to split up files like main manuscript, figure one, figure two. So, you might have to do multiple uploads. So, take your time with it. Don't rush it. Most, there's not a whole lot of publishing more than heavy email articles unless they're really small publishers and maybe they don't have one. For, every time I've submitted an article, I've always had to submit potential names of peer reviewers. And the way I get these is generally in my citations, right, the references that I'm cited in the article give me a good idea about who's an expert in this field. So, I try and pick authors that I'm citing and that have published related studies because ultimately I write the idea of peer reviews to get really helpful feedback. So, why not suggest names for people that anything will be really helpful feedback? There are some ethical considerations here which won't go into too much detail, but generally, you know, stay away, don't suggest your friends, right, or other co-authors. You want to keep it as unbiased or public review as you can. Response to reviewer comments. So, generally, you will receive reviewer comments. I've only had it happen to me twice where manuscripts can be published as is. And actually, it's really, it's sort of dance that you made it through peer review without having any major comments or even minor comments, no matter. But then I've always felt disappointed that I didn't get peer reviewer comments. It's sort of an interesting feeling, actually, that you don't get feedback because most peer reviewers will kind of break down, well, at least in my experience, they'll break your article down into things that they sort of liked, things that made major evasion and then minor comments. So I've always appreciated sentences about the things that they really liked, that I said it was nice to hear. So, again, with this, take your time. You want to address as many reviewer and sometimes the editor will even have some comments. A lot of those are copy-editing-type things, but you'll still want to address everything. And there might be very good reasons to not address a concern. Maybe if you were to address the concern, it would take two years or it's not really necessary, it's outside. Kind of the classic line that I always use is this is outside the scope of this article. So you can kind of argue, hey, this is a really good idea, but it doesn't change the conclusions and the significance of this article. That's more of a future work-type thing. So you can disagree respectfully and just say why you can't address something or why addressing that is how critical to the significance of the article or the conclusions. Generally, it's a good idea to start new documents and put every reviewer comment number one and then the response, number two and then the response. And you can break these things out if they've organized them, maybe it's the major step first, but then you can group all like copy-editing or stylistic type of comments at the end. And generally with those, if they say, if it's a word choice or if they say, use active voice, first pass the voice, I'll just group all those together and just say thank you for the suggestions. This is complete, done, right? So you don't need to have a whole fault explanation on that. There's always, I'll say, be patient. Some peer reviewers focus a little too much on grammar and things like that, but generally I found that it does improve the manuscript. So I generally just accept that they are revisions and add them in, but focus on the real major visions, the scientific content, making sure if there's any major visions that they can, but those are probably the worst. There's always that one reviewer that you kind of scratch your head and wonder if they read the manuscript and hey, you didn't address this, but then it's right, it's three paragraphs on page seven. And so as Karen said, just be patient because a lot of times that actually can be a signal that maybe organizations are a little out of place and so what I've done, how to address comments like that where you didn't address something what you did is I'll add a few sentences to it and change the organization around it and then I'll say that. And I generally, I've never had a response back from an editor that I didn't address. So these things and these documents and these response to reviewers documents can get quite wrong, but take it one by one and I've never had a bad experience where I've got a response to a reviewer's document and so it's been a positive experience. So, what about? I've heard a lot of beneficial cues from publication process, so as an assistant professor I'm just gonna share my personal publication process with you. My name is Seena Dawn, assistant professor from Nutrition and this is my fourth year. I'm also a dietician as well, so my research focuses on food-related behaviors and psychophysical determinants associated with nutritional status. So currently I have a 17 peer-reviewed publications and currently working on a few funding research projects and that's just a little bit of my background information. So we already covered why your paper can be rejected. Now once you get it, I was saying that your paper is a rejected publication. That's really embarrassing. But again, Dr. Karen already mentioned that sometimes really harsh comments that might impact on your emotion in your days and my advice for you in that type of situation don't take it personally. I mean, and also sometimes the publication process has a really complex and variable and there are several reasons that why they rejected your paper but sometimes they rejected your paper because your paper is being out of their scope of their particular genre. So I think I really want to be emphasized. It's really, really important to find a good journal. I mean, the best big journal for your research paper. And also when you get a rejection email, don't simply turn around and resubmit your rejected paper elsewhere without making any revisions. You take time and overcome your initial shock and take a look at their reviewers' comments and suggestions really, really carefully and also try to understand their point of view in a constructive way to improve your manuscript. And based on their comments and suggestions, you revise your manuscript and then you find another home that has the best paper in your research paper and then you resubmit your rejected paper. So I think that that's the first advice that I would like to share with you. And also another thing that I want to emphasize if you have a really two good ideas on your research paper, you might also consider that you break it down into two different management parts. I think that that might be also the strategy to improve your outcome of acceptance rate. And then also at some point, after you've finished out your graduate program and you might be interested in going into a tenured chat position just like me, all the college and all many institutions probably have their expectations about their promotion criteria. So I think that as a graduate student, I think it's a good practice to maintain quality and quantity of your publication and also make sure you have a research and progress in the manuscript you've written and also the manuscript in review at all times. I think that that's going to be something that I wanted to share with you. And also just like everybody mentioned, it's really, really important to read authors' guidelines really carefully and make sure your papers are consistent with that and having the same staff that you're looking for. So I think that that's the one thing that I really want to emphasize as well. And lastly, I was the first author for 10 manuscripts, 10 publications, out of 17 publications. So I just got back from my conference over the weekend and I met my collaborators and co-authors and we all mentioned that you're so easy to work with and you're so productive in communicating with the things that we have to work on together. So I think that's a primary author. There are several things that you need to know here in your communication and also plan really well for all those processes of your developing your manuscript process. So as a first author, whenever you have a really good idea, I usually consult with my co-authors and collaborators and then we also discuss in what area that each person will contribute on your research paper. And also I discuss the timeline that I expected to be completed so that they will have, everybody are very busy, everybody have a very busy schedule and that you might have this timeline in your mind that they might not be able to complete on their task within the timeline that you have in your mind. So I think that that's the one thing that you should do. And also when you're submitting your manuscript, make sure you keep them updated about the status of your manuscript. Hey, I submitted my manuscript, but sometimes you're not sent out the automatic email to all co-authors that it's submitting to the journal and things like that, but sometimes they do not do that. So let them know that you submitted your manuscript and it's on the review and I received the reviewer's comments and suggestions and things like that. So when you request, when you receive a review request from the journal, I usually take a look at all the comments of the reviewer's comments and suggestions by myself and then I share all of the comments with them, but at the same time, I look at those comments very, very carefully and regarding two different sections based on what other co-authors contribute. So I just separate the files for each authors, my co-authors and we send them separate email. Hey, these are the area that I wanted to work on for revising our manuscript. And so I think a lot of times my co-authorator told me that it was so easy instead of getting all those comments and suggestions, but since you separated this portion of my part, it makes me so easy to work on. So I think that that was a long strategy that I've been done and it was very effective.  So I think that those are some things that I wanted to share with you today and I'm hoping that everybody got a lot of information from today's presentation. And also I really would like to thank you for this opportunity because I'm a first year assistant professor. And then when Paul asked me to be here as a guest speaker, I told him I'm gonna be able to present this type of information because I'm just four year assistant professor. But I'm hoping the information was beneficial to you. Thank you so much. Appreciate this. This has been very inspiring to me. I know it has been to all of you as well. And so we stayed pretty well on the schedule. I got about almost 11 o'clock. And so we'll have a schedule there. I apologize for me going a little bit longer on my part earlier, but anyway. Here we are now at the Q&A. So if you have any questions, feel free to let's hear from them now. If you think of something later, you know how to get in touch with me. My email is on the flyers called assault. So maybe you've already communicated with me. So I appreciate the continued conversation. So we really appreciate you being here. Appreciate the GSA for helping to sponsor this. Appreciate the libraries for allowing us to have this nice room. Use this iPhone here. And we've got some coffee and refreshments over here. So please help yourself to those. And I'm sure there'll be others who will get in touch with me, send me an email and the days ahead. And I'll be disseminating this out to those via email. And so we appreciate it. And John for coming over here. It's that short notice. I apologize for that. And setting up the camera and audio and all that. So you can make John for doing that. So does anybody have any questions for you, the panelists? Yeah. Okay. You're talking about looking at families, while they're still nighting. Would you suggest looking at the local profiles? Is that something that you would want out of a local profile? Ooh. That's a big no-no. You want to submit to one drive. So my suggestion was that you have a pretty good idea of what that channel can be before you start buying. And that's so that you can target that audience and really focus on that. You know, we've also got a lot of, you know, you've spoken to it several times about how many of these make sure the audience can see. So if you already know what you want to run for, you can make sure that the way you present your information isn't distorted is appropriate to that particular model. You've got to be objective. Would you be able to submit to a local profile? Or again, but the trick there, of course, is you've got to come and run all the way. But that's it. So it may be necessary to do a lot of parts of it. I know that I've done studies where on any membership, I've raised a lot of different kinds of responsibilities, right? So I would write something that I might focus on a particular type of responsibility and see it to a journal that focuses on whether you can do that. But then my option also would have been to maybe show how what I did was relevant to a different area within my membership and submit to that journal. So you can kind of, we know what you're writing about, of course, you've written on a super, super specific, and then that will be in the journal. So that you can read about how to present what you did and what audiences you've been interested in. And that's how you can achieve what you're running. Along those same lines, I've always said, how long are you going to be doing? Because it's a journal, I think, that you're doing. It seems like it's a major, a major job to repackage your submission with the default tables and if they operate on it, that's important to deal with. That's right. Now, if you use something like in-depth or rep works, then that will help you with your submissions and bibliography, because you can just set the collection of references and just set the reports that you know to change it to your different style that you're running on. What I found was very awkward is that the major ones that you hear from the site, they say it's APA, but when you look at your tables, it is not really quite the same way. You're right. You know, depending on the set, everything you know to shop, any kind of plan, that you want to do it properly, so that you just have something in mind. Yeah, that's a good point about the rep works. We didn't cover that. This go-around, we've covered it in the past, that she mentioned rep works in those are two very similar products. You have libraries and stripes to both of those. They're excellent tools for keeping up with your content, you create your own personal account and it's in the file and it's something that you can keep. Once you leave the UA, you don't have access to that resource and it's a content management type of device tool. So it has folders in there and you can have multiple papers going at one time in their store of citations. So sometimes when you go into these databases that have articles and you get ready to export the citation, it'll give you those options. You can export, click on the rep works or in mode and export, you'll open up your account, you'll log into your account and you can export that citation in there. And then you can manage what you say. So when you get ready to publish or submit your article you've got the works cited there and you've got all the citations in there. It's just a wonderful labor saving device because you can arrange the citations by the type of style that your journal requires. Whether it's ABA or MLA or Chicago or anything or whatever the case may be. So you can arrange those, the bibliography will work cited. So you've got an article, you've got a hundred citations. My goodness, it will really save you a lot of time to just check those buttons. You want the citations that you want to use for that particular publication, you've already exported them there. So I want these 35 citations to go in this folder for this journal, which is going to this publication. It needs to be arranged by ABA style, run out in MLA, and it will check the box and arrange those citations for you. So it's a great tool. Any other questions? Yeah, I think I'm going to introduce that experience. Do you think they're going to matter? We actually, we are, so we're trying to, I guess these are questions to learn by tech or just to have me a person on it. Use that as kind of an experience to that. That's my good point, because I can't play like the people in my class, in a lot. But we couldn't compare it to use that. They're not going to actually use that. So I have to compare it to more of the games that we run on, I guess. I know, have you heard of the old political middle? But it's like an online way to talk about it. They have various journal publisher way-to-tech templates built in, that I believe you can then send directly to the publisher to talk about them. So maybe you have to keep sort of the formatting and way-out systems that you send out or way-to-created, it's not, you know, it's not necessarily a template. But I have had a person similar to that, a master in the roadside. Yeah, so it's older than you think. It's older.com, a legible, it's older and much more.  Do you have any questions? You might have mentioned this, is there any free-soulless life available at any time that you can state that you're a publicer or that you're calling? Like in offers? Or, of course, it seems to be the peer-to-peer. But what do you do when you're calling a customer? Where? No, you should comment on it. No, let's put it this way, you said that you always are asked to name. But I don't know if it is. But the good side is, I've never been to that. So it appears it stands in science but not circumstances. Yeah, it's pretty common in science. I've signed my review system, if I may, but I don't know if the editor scripts that off or not, but I'm trying to kind of pass that through. So, yeah, I don't think, because even as a peer reviewer, they specifically review a community to actually not sharing a peer review or telling anybody more about your super-review. So it's kind of a walk-in system and it's a good thing. There are a couple of hot-foam users. There are F-1000 users that have a look-in at the review system that you can see which appears in the article, but that's sort of the sex and right now that it's in the publishing world. Did you make a good request if you won't review it or something? In science engineering, in my case, yes, you do submit a list of a potential reviewer to be added to each one of that. That's how it's being added to that. You know, either you feel it or not, you should have that set aside. You won't ask whether or not you're going to be able to forward that. No, I should be. Well, it's a chemistry in the next nation's field. It's usually what we have towards peer reviewers. The peer reviewers are not affiliated with the general idea of that peer reviewer and all of it. So, you know, basically the way I expect to be seen in a very fine reviewer, that's not where they're at. And he's supposed to be a better journalist for technical part, but it's always peer review, especially if it's something. Yeah, usually for technical literature, but in engineering, there's just a ton of conference proceedings and other technical literature that's not necessarily peer review, but it's still good technical literature. I don't have to answer the question on that. Yeah, but I don't have a question about conferences. There's a lot of times you see an article for a conference, and it becomes published. But that has to be, is that peer review before it's presented to the conference? Sometimes, so some of them are peer review and the conference proceedings are peer review. Some other ones are not peer review and the conferences are not peer review. And so, some of them can be difficult to determine whether or not they're peer review. So, you might have to look at the journal, you know, the journal about this journal or about this conference or some of these. Yeah, exactly. It's actually a very popular science to see if you can read more. But the frequently, conferences, they want you to submit your peer review. Months before, and they abstract me, paper months before, I'm not sure if that's what you mean. A lot of times it is there's panels that are peer review and peer review. So, just depending on the discipline of the conference, kind of furthering it to the question about the, you can know the reviewers, where you potential reviewers, that's how I understood kind of what they were saying there.  You would much like to know who those experts are. And so, very small cases kind of end of the tale for us, but you'd know who those potentially you know, particular niche area groups are. We certainly do appreciate all of you coming. And again, just to join some food here, this is really good. This was, again, the graduate student association paper, the food editor, what was the? Hair is a challenge, yes, very good, very good food. So, I have to sell some coffee over there and there's some extra food and nothing else. So, tips up that's really good. Again, if you didn't sign the attendance sheet, please do that. Please put your name and your email address on here. Like here, we follow up with you and then since you, the content here like I said, keep the conversation going. If you've got questions, we'd love to hear your time.


Hey guys, welcome back skits on series episode 9 topic today is timing things you can't hear it But this watch is ticking at five ticks a second. This is my my I think it's Vostok, Komandir ski I probably butchered that pronunciation pretty bad. I Can't even read these hieroglyphs, but Yeah, so we're gonna talk about how to time things. Let's say you wanted to benchmark your code profile part of your code How would you go about doing that in x86 64 assembly? Let's see you wanted a timestamp value for some reason Let's say you wanted to have a file be saved by a function And it just happens to save the file with a file name for the timestamp, right? That's not an uncommon use case, right? So how would you go about doing that? How would you count number of cycles that have elapsed and also seconds that have elapsed on your processor? Since you know something happened and also how would you time a delay? Let's say you wanted to do something every five seconds. How would you implement that kind of a delay in assembly? So we'll talk about those things today Now there are a lot of ways to time things Some are more or less portable. Some are better and worse. These are probably somewhere in the middle of the road I think there are two of the more common ways that you track time And I'm gonna do two different ways one is a syscall called get time of day Which is available both on Linux and free BSD and that basically returns even though it's not a return value It returns a timestamp, which is counting number of seconds and microseconds since the epoch Which is some period of time. I think it's like 1970 or something like that. It's like a boomer a boomer date And then there's the rdtsc instruction that would be available on a more of a even on a bare metal implementation and that returns number of cycles since the CPU was reset and They seem different, but I think we'll show one in one of the examples to come that they're not really all that different They're just giving you different outputs Okay, so going into that instruction, there's kind of three main Things that you should know from the documentation. The first is obviously that the processor monotonically increments this timestamp counter Every clock cycle and resets it to zero when the processor is reset so Yeah, that's what it says. So basically when CPU turns on it's supposed to be like zero and then when You query it later. It will tell you the number of clock cycles that have taken place since it turned on the opcode is 0f31 and the instruction is just rdtsc as I've showed before and what it does is it returns the timestamp counter value That's 64 bit quantity into two registers the high 32 bits goes into edx and the low 32 bits goes into eax and Basically, you can just shift them around if you want to put them together and make one big number Or if you only care about the low 32 bits, let's say it's a very short thing that you're timing You know, you can worry about that only in EX the problem with that is that what if you overflow eax during your during your time Then you won't know you'll have a negative quantity. That's elapsed if you were to subtract that so yeah I would always take the full 64 bit value. There's no harm in doing so nowadays. We have 64 bit processors in the first place and Then lastly is that CPUs don't really do things Sequentially in my understanding. It's not exactly some things are happening while other things are taking place And so it's not this is not like a I think it's called the serializing instruction Basically, you have to if you really care about getting an accurate measurement of the time that's taking place or what current timestamp quantity value is You have to call these other Instructions called L fence and M fence which basically ensure that all the other previous loads And stores respectively have taken place Okay That's pretty much it very simple stuff. And so how you use that or how I'm going to use that at least I'm going to call L fence to make sure all the instructions are finished I don't really care about stores, but instructions at least I want to get some level of Accuracy here, and then I'm just going to call the RDTSC value Instruction that's going to put that timestamp quantity into edx and ex and here you can see I'm shifting the rx value left So these 32 bits are going to be moving into these 32 bits And then we're going to place them into rx with this or instruction here at this point We'll have a full 64 bit value in rx. That's been read from the timestamp counter on the processor So yeah, pretty cool pretty easy Now Patrick had a good question and he's wondering how do I know if my CPU supports instructions like this and actually Patrick's not the only one to ask this question because L1q in the comments brought this up as well And he was at a very good point in the previous video. I was using these two different random Integer generating Instructions already seed and already ran on the processor and those are not You know pervasive I guess I guess older processors 10 years plus ago wouldn't have had had those Instructions and so how do you check if a processor even supports those instructions? Is there a way in software to check and the answer is yes Or you can just follow this flow chart. So basically you ask yourself. Are you a boomer? Have you walked this earth for hundreds of years now? If the answer is no, then you probably have a new PC and so it probably supports this instruction But if you are a boomer and ask yourself are you in destitute poverty? If no, you probably have a new computer and so again your CPU probably support this instruction It's been around since the Pentium obviously But if you are poor and a boomer, then you have to run the CPU ID Instruction to check for support now. What is this CPU ID instruction? Well, I don't really know but from what I can tell this basically is just a way to allow software to discover details about the processor on which it's running and so You can pass in a what's called a CPU ID leaf number into EAX and That just basically means I'm looking for a certain category of things about the processor Give me all that you know about yourself And so we're gonna pass in EAX equals one to get some different feature information About the processor into two registers EDX and ECX and This case you can see we can check for a bunch of different stuff. We can check for the FPU support We can check for SSE 3 folding point instruction support We can check for all this different stuff in this case We're gonna be checking for the TSC support that is the timestamp counter and also the associated already TSC instruction And to do so it's very simple. All we do is as you can see we pass in CPU ID EAX of One to get kind of these bits set up and many more bits. I cut it off here. Obviously just for space Into EDX and ECX and then you can see here these bottom two lines I'm just testing if that fifth bit is set to high And that would indicate that this TSC is supported and if it's not supported if that's low I'm gonna just be jumping somewhere else in my code and saying hey, by the way that instruction didn't work Or it won't work if we try it So yeah, this is how you would check if your CPU supports a given feature So thanks for bringing it up Patrick and L1Q is a good point Now the syscall I would say is is easier to use in a way And also harder to use in a way And so this syscall is available again on both on Linux and FreeBSD with these syscall numbers Don't worry about the numbers because they're gonna be Implemented in the OS specific and they already are implemented in the OS specific File that is included on your processor whenever you assemble this code And what it does is it basically it takes two structures and it returns an error value So it would be zero if it succeeded Um and actually of these two parameters the second parameter is bogus because you don't use it anymore You can see here that time zone structure is obsolete. So we're just going to be passing in zero or null for that But the time value Address that's important. That's the pointer to it's basically the address of 16 bytes or 128 bits of space in memory That you're gonna use for the syscall to drop in the number of whole seconds and number of microseconds to have elapsed since that 1970s epoch whenever And so yeah, basically if you run the syscall with these quantities in these registers in this way This dot time value memory location will contain number of seconds and microseconds since the epoch so very straightforward, I think With that out of the way, let's hop into the code We'll move this up so you can see it for now We have was that six examples? I'm gonna cover the basic usage of that instruction rdtsc and the syscall Get time of day in examples a and c I'm gonna implement also Tick and talk If you have experience with MATLAB or octave tick and talk which are spelled TIC and TOC there ways you can kind of Keep track of the elapsed time that's taken place for blocks of code It's used for like very cursory levels of benchmarking in MATLAB So we're gonna implement those two sets of instructions in assembly And we're gonna do so both in terms of cycles and also microseconds that have elapsed So that's cool. Then we have we're gonna use those two tick and talks to estimate the CPU frequency of our processor Which is pretty cool topic and a pretty cool result in there And lastly, I'm gonna talk about how to do a delay a wait or a sleep function in a same way For your purposes, so that out of the way, let's hop into the code and the first I'm gonna hop into the actual functions because I think that's good to cover at first and So I'm gonna first talk about these a couple of functions. So I have a function called tick cycles a function called talk cycles a function called tick time And a function called talk time and so what these do is they just count the number of cycles or microseconds that have elapsed between them so tick I Call tick I do some code I call talk and it will basically compute and it will return in rex the number of cycles and or the number of Microseconds that have elapsed in that block of code between them So first off is tick cycles. So what this does is it's a function that takes no parameters But it were it saves in memory at this location down here and also in rex the number of the timestamp counter at the current Instant and so basically you can see here. I'm calling L fence to make sure all the instructions have finished I'm calling R DTSC to get the timestamp front counter value into those two registers DX and EA X I'm shipping them. I'm oaring them at this point. I have in RX the total 64 bit value of the timestamp counter Then I'm also moving that into this memory address down here Which we can access Outside this by the way, even though it's a quote-unquote local variable with dot tick as long as I refer to this memory address as Tick cycles dot tick and as long as I've included this File I will be able to access that memory Any word my code just by referring to it as tick cycles dot tick and then lastly So not only is that value in this address That's 64 bit quantity of the timestamp counter. It's also in RX So if you wanted it immediately you have it in RX for your own purposes Now talk cycles is the exact, you know associated Function there For tick so this includes tick cycles as a Dependency obviously we have to have called tick before talk because we're going to is subtracting off that saved value From this in this point in time And so here you can see it's very simple again We're calling that same rdtsc in exactly the same way at this point in the code where I'm showing my cursor. We now have the Current timestamp counter value in RX and all we do is we subtract off the previous value And so in doing so we now have in RX the number of cycles that have elapsed on the processor Since we called tick cycles Cool now tick time is a very similar Process but instead of using rdtsc obviously it uses that syscall and so you can see we're pushing the you know corresponding clobbered registers by the syscall and we're just calling the syscall and we're saving that quantity in terms of seconds and microseconds in this tick time dot tick memory address 128 bits of space and We're also putting that value in our ex just in case you care about getting the current timestamp quantity You know instantly and then of course in talk site or talk time Again, we include as a dependency the associated tick time function that you would have to call first and all this does is that again It gets the times the current Time seconds and microseconds since the epoch and subtracts off the previous elapsed microseconds down here and Returns it in our ex and so at this point you'll have a number of microseconds that have taken place from talk time since tick time Lastly, I have the sleep function This is a very simple function All it does is you pass in the number of microseconds for which you want this Function to just sit there and wait and we're gonna wait basically by just having a loop inside which we are checking the number of the current timestamp and So we're gonna use that syscall again that get time of day syscall just to keep checking. Hey, has it been 5 million microseconds yet has it been 5 million yet? Has it been 5 million yet over and over and over again until the answer is yes And once the answer is yes, we drop out So a very straightforward you can peruse the code at your own leisure if you'd like it's all online on the The soy hub suppository so with that out of the way, let's hop into the examples So I have two examples. Let's look at the first one first. That's um, just the RDSC instruction So if I run this, you'll see all it does is it's printing out. Oops. Oh My god, I'm so dumb the number of timestamp clock cycles that have Taken place since my processor was reset. So it's been however many Cycles since my processor was turned on and you can see it's counting up Each time higher and higher number, right? Cool. How does that work? Well, pretty safe straightforward First thing I'm doing is I'm actually checking if my CPU supports that instruction like Patrick suggested And so you can see I'm just checking that fifth bit if it's high I'm good to go. If not, I'm gonna say there's an error message for us So again, all I'm doing is I'm querying the timestamp counter and I'm printing it out So if I were to run that again, we'll see that I just get that quantity Increasing each time and if I go back in and what if I would have changed that that Conditional jump to be inverted right at this point I'm kind of simulating the CPU not having support for this instruction if I run it now You can see it says that our DTSC is unsupported Okay Let me change that back before I forget So yeah, you can you can successfully check whether or not your CPU supports a given instruction like that Cool Like example, I'm gonna talk about example C now, which is that get time of day syscall And so if I run that from this example function, you'll see that it prints out the number of seconds and Microseconds that have elapsed since that that unix whatever epoch back in the 70s and So you can see it's going up each time I call the code called a yeah the code How does this work basically as you would expect all it does is it calls that get time of day syscall and Then prints out number of seconds prints out at some point and then prints out number of microseconds So that's pretty simple again. You can see just prints out that time stamp value Okay, cool example B Now this is that tick and talk function that you would have in MATLAB or an octave but in Assembly and this case that's kind of not seconds, but it's counting cycles that have elapsed So if I run this code, you'll see what happens It basically did a billion loops in 1.2 billion cycles So in this case 1.24 1.30 Is that billion? Yeah So you can see it's running pretty much more or less at one cycle per loop iteration almost So yeah How does this code work? Basically, it's pretty pretty straightforward. We have the number of iterations 1 billion being saved in a register We're printing out some stuff in the beginning and you can see here's our tick and talk in our loop So here we're calling tick cycles. This saves that initial Timestamp counter value the cycle count into memory Then we have our loop for 1 billion iterations right here We're just decreasing that register by one every loop and until it's zero We keep jumping to the top of the loop at the end of that loop once it's done We call talk cycles and that just subtracts off the number of cycles that have taken place and it prints it out here So again, I run that code you can see it prints out we've elapsed We've taken a 1.2 billion reference cycles to do 1 billion iterations of that loop Okay, cool Example D now Exactly the same thing but in this case it's printing out that same thing but in microseconds So not in cycles but in microseconds now and you can see it's taken around 400,000 or so Maybe 300,000 or so microseconds to do 1 billion iterations And so you could actually compute the frequency of my processor if you wanted and we will do that in the next example as well, so How does this work? Well, it's exactly the same code pretty much cut and paste Except that we're using two different tick and talks we're using tick time instead of tick cycles and talk time Instead of talk cycles So this will compute the number of time that's elapsed number of seconds and microseconds that have elapsed since tick was called and Printed out to the screen and so You can see here it prints out that quantity as we would expect Example E this is how we're going to estimate the CPU frequency and How do we do that? Let me show you so you can see here here is that same exact code again 1 billion iterations of that loop and you can see at the top of the loop before it takes place we have Calling both tick time and tick cycles We have the loop and then we call talk time and talk cycles And then you can see we are basically dividing the two and scaling by a million to get our units in Hertz As opposed to being in what mega Hertz or something And so if I run this you can see we're basically gonna be estimating the processor frequency And so if I run this code You can see it's done a billion loop iterations in 3.593 billion Hertz I can run this as many times as I want it's always giving the same quantity Why is it given the same quantity? Well first off? What is my CPU quantity? So if I run the effect, you can see my CPU frequency is 3.593 gig so it's giving the exact CPU frequency How is how is it so accurate? How even though the time is different between each time it calls something like How am I getting the exact quantity every time if I had to guess just between you and me if I had to guess I would guess that that get time of day syscall is using RDSC and just multiplying it by some scalar constant to compute the time that's elapsed even though It's just it's really measuring cycles to have elapsed, but it's pretending It's it's convincing us that it's measuring time But it's really not and so in reality in my opinion if I had to guess These two methods the syscall approach and the RDSC approach are actually the same thing So anyway pretty cool stuff Lastly the last example I have was that delay function and so All I have here like the code. I think I'm delaying it for two million microseconds or two seconds So all I'm doing is I'm calling sleep with that as the parameter And then I'm printing out that we've waited so we know when the program's done So if I run this code, let me clear the screen It takes two seconds to print out that we waited for two seconds as you would expect 1,000 to 1,000 perfect. So yeah with that out of the way. We've covered pretty much everything I wanted to cover I think Now you guys know how do you basically use some pretty basic benchmarking You know what goes into that syscall and that instruction and kind of how they work behind the scenes And you can also implement delays and whatever else you want to implement on your own time No pun intended without further ado. I'll do one last thing and that's to plug our top secret discord No normies allowed. It's in the description in the last link Check it out if you want to hang out with some of us Yeah, I'll see you guys in the next video


This review investigates the factors affecting patients' adoption of mobile health, mHealth, tools by considering socio-technical factors from technical, social, and health perspectives. The study found that technical factors affecting adoption include usefulness, ease of use, date-related, monetary factors, technical issues, and user experience. Health-related factors include the disease or health condition, care team's role, health consciousness and literacy, health behavior, relation to other therapies, integration into patient journey, and patient's insurance status. Social and personal factors include demographic factors, personal characteristics, and social and cultural aspects. The study recommends a more patient-centered approach by ensuring the tools fit into the overall patient journey and treatment plan, emphasizing inclusive design, and warranting comprehensive patient education and support. Additionally, empowering clinicians and care teams, addressing ethical data management issues, and focusing on health care policies may facilitate adoption. This article was authored by Christine Jacob, Emre Sesgen, Antonio Sanchez Vasquez, and others. We are article.tv, links in the description below.