QuickBooks Online 2024. Report formatting basics. Get ready and some coffee because we're diving into it within two-its. QuickBooks Online 2024. First a word from our sponsor. Yeah, actually we're sponsoring ourselves on this one because apparently the merchandisers they don't want to be seen with us but but that's okay whatever because our merchandise is is better than their stupid stuff anyways like our CPA six-pack shirts a must-have for any pool or beach time mixing money with muscle always sure to attract attention yeah even if you're not a CPA you need this shirt so you can like pull in that iconic CPA six-pack stomach muscle vibe man you know that CPA six-pack everyone envisions in their mind when they think CPA yeah as a CPA I actually and unusually don't have tremendous abs however I was blessed with a whole lot of belly hair yeah allowing me to sculpt the hair into a nice CPA six-pack like shape which is highly attractive yeah maybe the shirt will help you generate some belly hair too and if it does make sure to let me know maybe I'll try wearing it on my head and yes I know six-pack isn't spelled right but three letters is more efficient than four so I trimmed it down a bit okay it's an improvement if you would like a commercial free experience consider subscribing to our website at accountinginstruction.com or accountinginstruction.thinkific.com here we are online in our browser searching for QuickBooks online test drive looking for the result that has into a .com and the url into it being the owner of QuickBooks selecting the United States version of the software and verifying that we're not a robot opening up our major financial statement reports like we do every time reports on the left hand side we're in the favorites area we're going to be right clicking on the balance sheet to open in a new tab right click on the profit and loss otherwise no one is the income state to open it in a new tab middle tab up top closing the hamburger scrolling up we're going to do a range change going from 010123 tab 12 3123 january to december 2023 run it to refresh it tabbing to the right closing the hamburger changing that range in 01 oh hold on that's not a one 010123 tab 12 3123 run it to refresh it there is our profit and loss otherwise no one is the income statement let's go back to the first tab we did an overview of the balance sheet in a prior presentation now we want to think about the general formatting capacities we have we're first going to look at the formatting that we can use to adjust the reports that are on the screen here and then in a following presentation we'll go in to the customizing of the reports and talk about the saving of the changes with the save customization so let's go through each of these items up top we have first the report period now note they have the range up top but we also have the periods to the left before we dive into it any further just want to realize that we have two major types of reports in terms of the formatting of them one balance sheet type of report which reports the information as of a point in time which you can tell because there will only be one date on the report as of December 31st 2023 whereas income statement reports are going to have a range and you can tell because it's going to have a range in the title typically january through december of 2023 both of these reports have a range up top for the data input instead of just one date if i go back to here and that's partially because on the balance sheet we can drill down on each of these numbers even though it's as of a point in time and it'll then give us a report for the transaction detail which is in a range format meaning now we have a range report that we're looking at but when we do some of these adjustments to the reports when we make comparative reports and whatnot then you have to keep in mind or think about sometimes there could be differences in terms of are you looking at a report that as is as of a point in time or is a range if you see some differences in the formatting of how reports can be adjusted that might be one of the reasons for it you want to think about is this a report reporting something as of a point in time is this a report that's reporting a range okay so if i select the drop down here we have the all dates up top we can change the dates to a custom date range which is basically what we are putting in here when we put the two ranges up top we can make it today's date so we can change it today we have to make sure to run it to refresh it when we do that notice when i did that it's giving us just one day no no difference between them i can make this beginning date whatever i want on the balance sheet and it'll still be as of that this numbers will be the same but when i drill down on it i don't have any space down here to have any transactions because the date range is just one day because this is a timing report let's go back then if i select the next one we've got this week this week to date this month this month to date this quarter this quarter to date this year and this year to date so those are the default settings that we can put in place here in terms of the period i like just putting the range in and as you can see when i put the range in i think the fastest way to do it is to say o one and have two digit numbers o one two two three that's january first two thousand twenty three when i hit tab it'll put in the dashes and the full year to o one uh not o one two twelve thirty one two three and when i hit dash it'll put in the date and the year we could of course use the calendar as well if you prefer to use the calendar drop down to be selecting the dates and then down here we've got the display columns so the default is that it's going to be displaying just the total columns down below as you can see but you might want to see multiple months for example so if i was to go to months and then run the report run it to refresh it now it's showing the balances on a month by month basis quickbooks didn't put anything into the sample company for the first few months and then overhears all the data that's in there per month this is one of the things that are different on the balance sheet than the income statement because on the income statement which we'll talk about later but just note that it also is defaulted to the totals but if i then say i want to see the months and run it it's going to show me all the months and give us a total at the end of the months why because when we're thinking about the whole year we can add up all the months to give us the whole year because it's a range report whereas the balance sheet doesn't give us a total at the end because the December numbers are the total because the balance sheet is being reported as a point in time all right let's go back up top again we have the months we could do it for the days that would be a very long report but if you had a small date range up here you might do it for the days same with the weeks the quarters quarters are quite common there's 12 months in the year so we're going to be running this every three months right January through March April through June July through September October through December these once again are just reporting as of the end of the quarter because they are reporting as a point in time so then we can go down and say what about if I want years then run it obviously there's only one year here but if I increased the range to 2022 and 2023 then we can run it on a year by year basis as well and remember that if you do that on the income statement a year by year basis if I put this back to 010122 then it's going to give us the two years and then the total it doesn't give us the total over here because this is as of the end of two years that's what the balance sheet is and then we've got the customers we can break it out by customer and I'm going to bring this back to uh 23 let's say and run it so so now we've got basically our balance sheet that's going to be broken out by customer this might look a little bit unusual when you're first looking at that drop down but if you're in a job cost kind of system then it might be the case that you want to see your information by customer although it might be more likely that you would do that on an income statement type of report and then you can also do it by vendors similar scenarios now we've got everything broken out by the vendors to and then over here you can see this is not specified meaning these are all the ones that don't have a vendor are specified or tied out within it this once again probably a report that might be more useful when you're breaking that information out on the income statement and breaking out the information by customer and vendor and so on and so if I hit the drop down again we have a product and services so not really a date range but again this would be something more likely that you might use on the uh on the income statement side of things when you're trying to think about your sales perhaps and break out that information by the products and services let's bring it back to the totals for now and we'll run that one again and let's see what we have next here show non-zero or active only so if I select the drop down notice we have uh the active items all versus non-zero items now why why is this important well if I go to this first tab over here let's go down to our transactions on the left hand side go back into my chart of accounts these are all the accounts that we have set up not all of these accounts are going to have activity within them so I don't really want the zero balances to show up oftentimes on my balance sheet or and or income statement right so that's why the default here is typically the active ones now you might say well why why would I want the active ones and not the non-zero ones the active ones mean that there could be have a zero there might be like a zero here here's a zero but it had some activity within the range that we're talking about so if I go into it then we can see that there was some activity in there that's really nice to have from an internal bookkeeping standpoint so if I have my balance sheet open because I'm trying to track what happens in it then I would like to have the zeros that have activity in it to show up so I can drill down on it and see the detail we will see that very often in the undeposited funds this one's not zero right now but this is a clearing account which will go down to zero so as I do my day-to-day journal entry I would like to see the stuff that goes in and out of undeposited funds so even when this is a zero I'd like to show it there so I can drill down on it so that's why it's the default but if you if you said non-zero all non-zero accounts then we can we can scroll down and you can see this zero still showed up but did I run it back did I run it then this should take away the ones I don't think I ran it so yeah took it that one away that zero is gone so in that case if undeposited funds was zero it would disappear which is great for external reporting purposes but not as great for internal bookkeeping purposes so you want to when you do external reporting you might change it from active to non-zero if I did all of the accounts then all and I run that again I gotta double run it then all of the accounts should should show up up top that zero is back but we might have a bunch especially if you start the accounts that QuickBooks provides you you might end up with a lot of accounts that have zero balances in it especially on the income statement let's check it out on the income statement just to show you what I'm talking about let's say we do all of these all of them and I'm just gonna double run it to make sure that it runs it and see if we have what we have see how we have all of these accounts with nothing in it it doesn't even have a zero over here it's just blank accounts so that's kind of ugly we don't want that's not good for internal or external reporting typically and so we'll bring it on back to the default the show columns same thing for the columns but in our case we've only got you know the one column here so if you had a report with a column situation then you then you have a similar concept with the active all and non-zero let's bring it on back to active let's run it to refresh it I'll double run it just to make sure it's refreshed and then we have this is another way that we can do comparative type of of reports and we'll talk more about it in detail and make comparative reports in the future but right now I just kind of want to differentiate between what we did over here for example when we saw a quarter by quarter comparisons if I run the quarter by quarter it starts January and then you know it goes in chronological order from left to right but if I wanted a two month comparison and then maybe a difference between the two months I wouldn't use this method I would go back to the totals and then I could use this method I can go here and say I want the previous period so so so I could say that if this was if I put it in here let's put it in here just for one month let's go from 0 1 0 1 let's go from 12 3 1 2 3 12 let's go from 12 1 12 1 2 3 and then if I take the previous period it's going to take November so here's the previous period 11 1 to 11 30 and then I can run that one and now it has a comparison this time it's showing the most current period up front this kind of comparison is only going to show two periods not more than two periods because you can also give like a another column on the right hand side so I could go over here and say if I don't have the custom if I take off the custom just to show you the we still have you know the prior month here so okay anyways I'm going to hit the drop down we could also add the dollar change and the percent change so now if I run it it's now showing the current period the prior period and then the dot then the dollar change the difference between the two and the percent change we'll talk more about this report we'll create it again and analyze it in future presentations but for now just know that we have those two different ways that we can run these reports this one we can run more than two periods however whatever the periods would be this one we can only run two periods because the idea is that we're going to be comparing one period to the other and possibly differentiating between the two this one will result in the current month on the left this one will result in the oldest month on the left going from left to right in a chronological order and so I could change this period to whatever I want I could change it to a quarter and have the prior quarter and so on and so on and so I could also say I want the previous year so now I'm saying look I have this month and this year December if I run this now I've got December of the prior year so this one isn't comparing the entire year to the prior year generally what we're trying to do is say I want to look at just December or I want to look at just the quarter the the last quarter and compare that quarter to the last quarter of the prior year now just realize that when you start to think about all the different combinations that you can have you can do the same thing with the percentage and the change here when you think about all the combinations of prior quarters and so on that you can have then when you do your reporting on a monthly basis or a quarterly basis and yearly basis then you've got to think what do I want to give someone I can give them the total only report or I can I can give them a month by month a quarter by quarter report and I can give them comparative reports that compare any two periods month-by-month comparison in the current year quarter by quarter in the current year current year compared to the prior year and the current month compared to the prior month in the same month the current quarter compared to the prior month and so on. So it actually gets a little bit overwhelming and you could pick and choose which of these ones you have to think about it, which ones are going to be best to be able to present with. Okay, we'll talk more about them later. We also have the percentage of rows here. So if I select the percentage of rows and run that one, let's run it again. So now we have the percent of each row. Now this one isn't giving us much information right now because we only have the one row. But if you had a report with multiple rows, this 100% would be different. The other one that will give us a difference is the percentage of the column. So if I go into the percentage of the column report and run it, so now I'm getting a percent each of these numbers divided by the total, the total assets. This is a useful and common report because you can kind of compare, for example, your percentage asset allocation, kind of like you would in an investment account, to other companies that you're benchmarking or comparing to which might have a lot more cash than you. But what the question is how much cash do they have compared to their total assets that might give you some more information. So we'll talk more about that one in future presentations as well. So I'm going to take that off for now.  Now note that you basically want to be using the cash basis, I mean the accrual basis all the time, unless you have some rationale for checking over to a cash based system. Or in other words, you might be using a cash based system. But this toggle here does not necessarily is not the determining factor as to whether you're on a cash based system or not, it will be dependent upon how you're doing the data input in the system. The reason this toggle might be useful is because it might give you some cash, it might be able to give you more information about your balance sheet that will then be reported kind of like on a cash flow based system, rather than an accrual system. So in other words, this kind of confuses people a lot of times, let me dive into it a little bit more here. If I look at my flow chart over here, this is a desktop version flow chart, but we're just looking at it for the forms and the forms will be the same from any accounting system. Generally, remember that we have the cycles vendor cycle customer cycle employee cycle, you can think about whether you're on a cash based system by cycle in essence. And if you're on the vendor cycle, for example, if you're entering your transaction just with the bank feeds with a check or expense type form as they happen, then you're already on a cash based system, right? Because the fact that you're entering and paying the bills with a check form as they happen mean you're on a cash based system, you don't need to toggle the report from an accrual based system to a cash based system because your vendor section is cash based given the fact that you're paying your bills as they become due with an expense form through the bank feeds instead of with cash, you would be on an accrual system if you entered the bill form, which increases accounts payable accounts payable is an accrual form, you don't need to toggle on and off a cash versus non cash to see that now you could you could be on an accrual system and see the accounts payable and then toggle to the cash basis and see what QuickBooks does changing and removing it should basically remove the accounts payable account, right? But on the on the on the revenue side of things is the revenue on a cash based system or not? Well, if you're recording all of your revenue as it clears the bank with deposit forms in recording revenue with that, then you're basically on a cash based system because you're recording all of your revenue as they as they happen as they hit the bank if you're in gig work or something like that and and you're recording it with a deposit form. And so therefore that would be a cash based system or if you're on a cash register and you're recording all of your sales as they happen with the sales receipt, then you're on a cash based system because you're not recording anything to the accounts receivable. But if you're invoicing clients, then you're recording an accrual based system. You don't need to toggle the report on to an accrual versus you don't need to toggle it to a cash based system to remove the cash, right? If you if you did have a accounts receivable, which is a cash based account, and you want to see what would happen if you like toggle to accrual bit to a cash based, because you would be on an accrual basis, if you have a if you have accounts receivable, then you could toggle to the cash based and see what what the difference would be in the report. So in other words, if I go over here, accounts receivable, if you have to track accounts receivable, it will be there because you would have entered invoices. And therefore you have an accrual account of accounts receivable. And if you don't have invoices, you wouldn't have any accounts receivable because you just wouldn't have recorded anything, you would be on an accrual based, I mean, on a cash based system. And that sense then the accounts payable would only be there if you reported things in a bill format. And therefore you're doing an accrual thing by entering a bill. If you didn't enter any bills, you would already be on a cash based system. So what could be useful with this toggle is to say, Okay, what if I have this report on an accrual basis? Here's an accrual account. Here's an accrual account. What if I want to look at it on more of a cash flow basis, I can toggle it to the cash. And it should then remove the accounts receivable, as you can see, now it didn't record the accounts receivable. So what and it didn't record the payable. So what did it do? What's happening then? It's basically saying instead of recording, you know, revenue, when the invoice happens, it's not going to record revenue till we receive the payment, because that's what you would do on a cash based system. If you instead of recording the accounts payable when the bill happens and the expense when the bill happens, it's going to record it when you pay the bill. And therefore it's eliminating the accrual accounts, accounts receivable, and accounts payable. So that could be interesting to look at because now you're kind of looking at your books on a cash based system as opposed to a cruel based system, which could be useful. But you also also have the statement of cash flows to help you to look at it that way as well. Just don't think that if you're on a cash based system, like you could be on a cash based system by just checking the cash thing over here, because if you're running stuff through accounts receivable, you're going to need to track it. And if you're not doing that, then you are already on a cash based system. And there might not be much, there's not going to be any difference really, if you toggle back on over, if you weren't doing any accrual transactions, because the books would already be on a cash okay, I'll stop. Alright, so then up top we have the collapse button. So the collapse button is going to collapse some of the some of the line items here, these these triangles. Now you'll remember that the triangles represent the this triangle represents just a normal accounting name for the accounts assets, the current assets again, a normal accounting category, these triangles are representing the different account types within QuickBooks. So each of these have triangles, those don't collapse. What do collapse are the ones where we had a we made our own triangle with a sub account. So the sub accounts collapse. So like this truck, if I expand, the truck had a sub account, and that triangle goes away, if I collapse it, so I collapse it, and that goes away. Now, you might say, well, why don't I just collapse it? Well, when you print the report or export it, sometimes it might not, if you just do the triangle thing like that, it might not take so you might collapse the report if you want a smaller report, then you can look at a summary balance sheet. And then we have the sorting fields, you've got the default, the total in ascending order, the total in descending order. Now, how is the balance sheet formatted, it's formatted assets, liabilities, and equity accounts, that's the order that it's going to be in. So so what is this sorting thing going to do? It's already in that order. Well, if you look at inside a particular account, such as like in here, in the other current assets, it's sorting the inventory above the undeposited funds. Why? Because it's just doing alphabetical order, right? It's just saying the inventory is above that. Now, how can you change that? Well, you could use account numbers to change to reverse the order for these two accounts under this section. You could use account numbers. And if you want an undeposited funds to happen first, let's take a look at some of some of these other examples. So this one's the it's in alphabetical order, even though this one has nothing in it, it's it's above this one, it's just an alphabetical order. So if I wanted to change the sorting, it's only going to have an impact within within those categories. So let's go to total based on the balance in ascending order. So then if I go back down here and I say, okay, this one's the same because it was already in ascending order. So let's go descending order. Let's say, where was it? Let's go total in descending order, run it. And then I'm going to scroll down. And so now you've got the highest one up top. So that might be a useful thing. Because when you do external reporting, you might want the most important account up top, which you might think would be the account that has the highest dollar amount in it, that could be useful for external reporting. It could be a mess as well. However, when you're trying to give your information to your accountant, because they might try to take this information and put it into a worksheet that they had in the prior year, for example. And therefore, they don't want these numbers to be changing all the time, they would like it to be in the same order. And so therefore, the standard order might be better. Account numbers would be even better. However, if you're not good at using account numbers, then you could create a mess. So just be aware of that. And then you could add the notes. So we have the note down here that we could add to the report. And so a little footer down here on the notes. And then we can edit the title. So if I go into this, edit a section titles replaces the default titles used in all balance sheet reports for this company. So assets notice, this could be useful because remember that QuickBooks might use some terminology that is different than what you want to use for external reporting purposes. So assets is a normal name. Current assets is normal. But bank accounts is a little bit funny. So for external accounting purposes, you might call it cash and cash equivalence, or something like that, right? And then accounts receivable other current assets, fixed assets, you might call like property, plants and equipment, property, plants and E and equipment, equipment, other assets, liabilities, credit cards, long term or something and you might call the equity like owners, owners, equity or something like that. I can't spell if I spell it wrong. I'm sorry. Saving changes, this could take a minute, refresh the page in a bit. Okay, so it might take a little while to pick that up. But that that could be useful. So that for external reporting purposes, if you want to try to customize those names, you might be able to do that, which would be nice. You can also adjust the title up top so I can go into here. And I can adjust the name up top if I so choose the balance sheet. The date doesn't allow you to adjust that for some reason. I guess it's connected to the date field. And then you've got you can send it out with an email. If you have your email connected, you can print it here with your printing options. That also gives you the print preview so you can check out what it looks like. It's on portrait versus landscape. So if it was a long report that's wide, you could try to make it landscape. Notice the smart page breaks. It's trying to give you the best way to put the page breaks in there and report header on each page, meaning the second page has a header versus second page has no header. And then you can close it. You can email save as a PDF or print it. And then we've got the drop down here. We can export it to Excel. We can export to a PDF. We can add to the managed reports. And that's that's the added memorization report tool. If I go over here and we go into our reports hitting the hamburger reports manage reports. So into these reports over here. And so we'll talk more about them later. But exporting it to Excel means that we can really do some customization in Excel. We'll play with that a bit in future presentations and the cog we can have display density compact checked off or non compact. In future presentations next time we'll go into the customized areas here, which will have a lot of duplicate information in it. So they pulled out that I think they get kind of confused in terms of should we put it up top here or should we put it in this customized area so there'll be some duplicate stuff. But we'll take a look at this in detail in future presentations. And we'll also take a look at how we can save these customizations possibly so that you don't have to do them over every time which means you could just save the report. And you can put it then in your custom reports here so that when you open it up, you don't have to redo the changes.


So yeah, like Adam said, my name is Daniel Cohen. I work here in San Francisco for 50 Cubes. We are a company that makes primarily social games targeted towards women. Yeah, so that could be a whole nother talk right there, but that's not what I'm here to talk about. So yeah, what I'm here to talk about is, we just made this game called Fashion Tail. It's in the app store right now. So go make me some money, I guess. So it was, why it's interesting to you guys is that it was developed in jQuery. The front end is entirely in jQuery and HTML5. And it took us about eight months or so to put together. And so I'm gonna kind of just talk about what worked and what didn't. And some of the lessons we learned and kind of the difference, because the difference between doing a, sorry, you're gonna be seeing a lot of Kirk as the iPad turns up. So just kind of the difference between like a web application development, which I did previously, and then the mobile game development, which I do now. So, right. So the first thing I'm gonna do is just quickly show you what the game looks like. Hopefully it'll load. It's gonna take kind of a minute. This is not the version that's on the app store right now. So it's kind of like my development version. So like I said, this is, it's targeted towards women. So it's about fashion. That's good stuff, right? Yeah, I feel comfortable. So, right. So this is, oh, come back. Ah, it's more for my anger than yours, I'm sure. So this is the daily update modal, right? This is probably where the whole business aside mostly mimics what the game is doing. Like you have this sort of feed over here so you can see what other people are doing. You know, you have like the coins you get and that sort of thing. So on the next page here, it's a similar thing you can challenge your friends. The game is actually a hidden object game, which I'll show you the board here in a minute. But I wanted to show you these pages because I do talk about them in a little bit. So, ooh, play screen, exciting. So I did want to put the sound on. Right, okay, just so you can see it. So yeah, we got this, you know, oh man, come on. It's also the name of the iPad. Okay, cool. So I'll try to hold it up here. This is the first time I'm trying to give a talk with an iPad. It's pretty fun. So, yeah, so we have this episode selection screen. This is probably pretty normal. You've seen this before. There's a lot of little transitions and stuff like that happening. I don't know why I have to look up here. It's right here. So it's pretty good.  So I'm gonna play this challenge three and we come to a loading screen. This guy is also all in CSS. Whoa, music change. Oh, so seamless. So that's it. Like I said, it's a hidden object game. You find stuff that you see in the bottom and then it goes into your little inventory. Pretty simple, right? I know how to play really well. So, right. So also while we're here, if you notice when I drag around, you've got this cool little parallax effect. So yeah, that was a month in the making. And yeah, so once you found all of the objects, then you drag them back up onto the top. Ooh, yeah. Exciting. So, oh, not so good. Yeah, so then we're gonna pull to that one and then we're done with the board. Scene complete, ooh. So yeah, you see it's, oh, thank you, yeah. So yeah, these are my two favorite effects was the star and then, well, this cut scene, by the way, was done in Edge, the new Adobe Flash option. So it's possible, it is. You can do it. So yeah, that's it. And then you get the leaderboard and you can continue or whatever. So that's the game. Basically in a nutshell, yeah, thanks. So yeah, this was done. The front end was coded entirely by like two people, me and one other guy, Mark Messy, and it took about, like I said, about eight months to do. So let's get back to the presentation and talk a bit more about it. Oh, the music's gone. It was really relaxing. So when you're coding a game for the iPad as opposed to anything else, if you do it in HTML5, simplicity is really fine. You can concentrate on just having something that's short and you can replay. The reason why is that, you know, mobile devices, people don't play for very long. There's really no reason to commit yourself to being like, I need half an hour of gameplay every time they're on a bus. I mean, just doesn't happen. So yeah, so that's why, for example, that board you see is really short and that's kind of repeated all the way through. So I'll talk a little bit about the structure and what worked and why that sort of helped coming up here. So the good part about HTML5, why, if anybody's like, hey, build me a game. And they're like, I want native. You can be, there's a lot of advantages actually to HTML5, not least of which is for Apple, you can change stuff without resubmitting and waiting when we equal. You're just like, please go through, please go through. And they're like, you forgot a variable.  So that's happened, it has. So yeah, you can change things on the fly like that and kind of sneak it through their approval process. So yeah, I don't use it for anything bad, but. So yeah, if you're designing the game as from the technical standpoint, not like the game design portion, but just from the technical point, just keep these bottom three things in mind. You're going to need to share it, virality is so important. So for us, we're using Game Center and Facebook and that should be in your mind like right after, hey, I've got an idea for a game, blank, Facebook, right? On Facebook, it should be very early. Plan for ads because you're going to want to pay for it at some point even if you're like, no, that's lame.  So like, you know, just to plan for it. So it'll be in there. And then also plan for stats. Like unit testing is one of those things that I hate to do and getting stats is also one that I'm like, oh, really? But like, yeah, every click that they make, how long it takes them to do things, how many stars they got, did they find those shoes or whatever, you know, like. It's all got to be in there because you can, it's no good to be able to update the levels if you don't really know why.  Anyway, so this is the basic structure of what we were doing and this is, I feel kind of bad because like, I was learning a lot today about, you know, how to do stuff the right way. And there's a lot of things that we had to kind of do to make it work well on the iPad one and iPad two. And later the iPad three. Oh, and that showed up, the iPad three. That was a good day. Yeah, we were really excited. It was, it was better than Robocop. Just super happy. So this is the basic structure. The index, the index.html you only see in between, it's that blue screen that says loading. Everything else is in iFrame. So that was really confusing when we proposed doing that because people were like in iFrame, I thought it was cutting edge. You know, but I did that in middle school. What are you thinking? But there's some very good reasons why we ended up doing it, not least of which was the iPad one. So basically the main reason is this goes back to like the difference between a business application and a game. With a business application, you kind of, in my experience anyway, you kind of, you may have a lot of records and stuff like that, but you're kind of going between three views and sort of changing stuff and moving stuff.  You know, but in a game, you know, like you get far enough in a level and like 300 goblins attack. You know, and like, and like, so like there's a lot of stuff that happens and it's kind of all, it's kind of all variable. And so the main reason for the, this iFrame, this iFrame version was because of garbage collection. I know there's a lot of people, I talked to a lot of people about it while we were having problems with the iPad one. You know, after a certain number of levels, it would just crash. And that's really depressing. It's just like, what did I do? What do we do guys? Come on.  And it was like the only efficient way, you know, to really get rid of stuff consistently. It was, I'm not even kidding.  And with the repetition that you get in gaming of constantly like making the game board and then taking it away and making it again cause they died, you know, and that sort of thing. That's a, it's a weird, it's a weird sort of edge case for the HTML5 that it's not always that great at. So that's why we set it up that way. Yeah. Okay. I think I'm doing okay on time. Okay. So now about the game board in specific. That was pretty cool, right? There was the parallaxing stuff. I think we're the, we're the only hidden object game that I've seen at all where you can find stuff on those multiple layers like that. So that's pretty good. Even if, you know, the game style is not really your cup of tea, you know. I was looking around today and I was like, yeah, maybe there's a couple of people in the room who are like, oh yeah, that game is freaking sweet. So like I said, it's in the app store now and you can just go down. So yeah, the, how that worked. This is the actual canvas element. I think I'm okay. I'll just be careful. Oh, that's a good idea. Sorry. Well, technical difficulties aside. Okay. Well, this is good. I was worried that I didn't have enough material. So it was, so now I think we're doing pretty good. Right back on track. No? Really? Oh, come on. Okay, back to Khan. No? There he is. Okay. Here we are. So the game board, this is the actual canvas portion.  Particularly if you programmed in Flash before that. And we still have that at our company. Like I said, we're social games so there are a lot of Flash developers and they see canvas and they say, oh good, the canvas. Now I feel comfortable. That's my touch point. Here I am. No, don't think like that. Just don't. It's not like that at all. It's like a PNG with like function calls. That's all it is. And so yeah, that's a big change. Everything that is dynamic about that, the moving side to side, that's all done with WebKit transforms. And then there were animations, if you noticed, like the water spout on the fountain and stuff like that. That's done with divs on top of it that are just changing the background position through a sprite sheet. So don't try to make the canvas do acrobatics because it won't.  So yeah. So that's that part. Let's see, anything else on this that I need? Yeah, and then there was the drag events that were going up also. So like I said, that is all WebKit transforms. So you just had to pull the transform out of the, you know, out of the WebKit transform using JavaScript to get the offset for where you're clicking and everything like that. So like I said, it took a little bit of time, but I think the, you know, the end is smooth enough so that it's not, people aren't like, ah, that's HTML5. I can tell because it's slow. Okay, so like I said, we use the iframes for views. Very important difference. We tried originally to do just the one web page, you know, the one web page version. That would have been great for phone gap, you know, but obviously it just, it just didn't work. What we have is a super minimal HTML skeleton in all of those pages. So like, I mean, some of them originally were just like, people were like, can you send me the, you know, that's a cool HTML page. Can you send it to me? I was like, if you want the source and they're like, no, just the page. And so it's just like, HTML body, empty. That's it, you know. So you wanted load times to be fast enough. So like everything's just written with the JavaScript on the fly when it comes up. So that was like, like I showed you with the feeds and everything like that, but even some of those modals and stuff like that, all of that has to be dynamically made. And you'd be really surprised actually how few images are actually in the game because the CSS as opposed to just like a PNG or Canvas is just a lot faster. So yeah, so we have the Ajax calls to our server for the game state, like what has the user accomplished so far, you know, where is there, you know, how many levels and what's their scores and stuff like that. And then also for the message feeds, we pull from, you know, right now it's just from one place, but we've tested it with other stuff, like Facebook posts and stuff like that, which is good. And then the purchasing options, which again is really, really good. If you're pulling your purchasing options from the server, then you can change them. They're too expensive or not expensive enough. I mean, obviously we just make it cheaper. You know, for you, the customer. Kidding, so yeah. So yeah, and so we didn't use PhoneGap. We have an in-house wrapper. We have some people who are very good at Objective C, so we have that luxury. Also we have the content team. So when I show you like the demo that you guys get to see, you can laugh at how bad the art is for that. But yeah, it's very similar to PhoneGap. It's just set up just slightly different so that we can handle the, you know, like the iFrame calls and store a lot of stuff in the wrapper because that wrapper storage and the Ajax calls turned out to be just much faster than using the HTML5 local storage. Yeah, so a lot of this was also because like, you know, Apple needs wants you to run on the iPad one. And so a lot of times we were like testing on like this guy, oh no. Why do I touch it? I thought I learned. I was so proud. Okay, so, right.  This is pretty good. This is a good reason to bring tape. Some duct tape would really be nice. Yeah, where are we? Okay, oh, this is what I'm talking about. So yeah, beyond just the front end and the HTML5 stuff that I mostly worked on, like I said, there was a wrapper that was built to just kind of hold all the data and you know, which is really handy for offline play. And then the database connection, which was not written in Node, but probably should have been at some point because you know, that would have looked better on the resume. So yeah, let me talk just a little bit more now about the difference between the DOM elements and the canvas.  Just don't think that way, don't, just don't. So the iPad has some great advantages if you're just targeting that first because for example, yeah, there's only one CSS prefix. Cool, like I said, I worked on those major business apps and stuff like that and that browser fragmentation, I hadn't heard that term before and then like flash forward a week and be like jumping out of a window, like why are you, why does it exist, you know, all of that, I don't understand. And I had worked for Microsoft before and I totally like changed my, anyway. So yeah, if you're targeting the iPad first, obviously you may have to go back and change it later but like just having the one prefix is really important for the things like the webkit transitions and stuff like that because unfortunately jQuery animate is not gonna get you there right now and like that other person had mentioned, I tried that library to make, just switch over from jQuery animate into using webkit transitions and it's not gonna work. So I'll show you some of the things that kind of helped in that area. So that's it, dumb elements move them around, they're much easier than trying to move stuff on the canvas and you can really do a lot with them. I mean once you get into that CSS stuff you'd be surprised. Repeating calls on the canvas is actually super fast. I don't know if you noticed but when I drag stuff up onto the screen like it faded into that rainbow color kind of stuff and that worked pretty well. That was like 20 draw calls onto the canvas but it's only the one image repeated on top of itself. So yeah, that works. So good, if you wanna do that. That's right and then the other advantage to doing everything in CSS and not say in the canvas is that CSS resizes really well to different resolutions, obviously that's what it's for. So yeah, like the iPad 3 showed up on our doorstep and we're like yay and other people looked at what they were doing and they're like oh shoot. And then we looked at what we had done which was mostly in CSS and we're like wow it's still really crisp and it looks really right. So I mean that's what you want from your HTML5 app is that confidence that it'll move from screen to screen and to screen and still look nice. So yeah, so now to the HTML5. I have a really bad looking demo. So I went to go see my, yeah, ooh, look at the ugly. I went to go see my mom up in Minnesota a week before my last, oh I'm from Minnesota. Oh how does he hide the accent? So yeah, if you have a mom from Minnesota then you're probably gonna go to an Indian casino. So we did and so instead of doing the demo that I was going to do last weekend I did this one for you guys. So it's on GitHub and so you'll have the link. So you notice that flip is really fast, no problem. Even on the iPad 1 that'll be fine. So all the WebKit transforms are hardware accelerated. So you get a lot from that. This is all dynamically generated selection screen. Oh and this has gotta go the other way. Can you flip orientation? Okay, wow and it stayed plugged in. So yeah, this is just a quick example of a slot machine guy, right? So again everything's moving around with the WebKit transforms. So you'll notice, it's not a font, no I'm scared. So you'll notice if in the URL up there it's actually two different web pages. If I was doing this exactly like fashion tail there would be one web page and these would both just be eye frames. But you kinda get the idea this way. So the CSS here, there are no images except for those little guys on the bottom and the planets obviously are kind of images. But there's a lot going on. All the movement, all of everything else is just with CSS. If you look very carefully, I don't know if you can see but there's stars behind the planets that are all moving independently just with multiple background position. So again, if you're programming for the iPad you get to use all of these cutting edge CSS three things that people tweet about and then you're like why am I gonna use that? Like I need to support, I, whatever. Or yeah, so that's the cool part about that. And so again you can kind of look at that to see some of the things I'm talking about at that point. So let's look at all of that a little bit more in detail. So whoa, it's hot, kinda hot. So the CSS, this was the big thing. It's different again working in more professional apps. What makes you feel like you're doing your job really well there is like after months and months of preparing and your client looks at it and just says, oh, that's okay. Yes, I'm gonna treat myself to steak.  So and that comes from the CSS more often than not when you have HTML5 stuff. So some interesting things again like there were curved pads, if you notice like the stars exploding that stuff that came out of it. Those were curved pads where the element doesn't move. I'll show you how to do that here in a second. Some of the bad points on the other hand are opacity and box shadow for whatever reason, for whatever reason all of the Apple tablets are really bad at that, all of the iPad versions. So yeah, you can shrink things down to nothing. You can move them really fast around the screen. You can spin them around in 3D space but if you try to make it slightly see through it's like, I can't. So don't do that. Same thing with box shadow. I mean like it's so common to be using it that you kind of forget sometimes because it makes everything look so good. But if you can avoid animating it is the only problem. You can have it on the page just don't animate anything. Don't animate it and don't animate anything over it because it's that same opacity problem. Use WebKit Transforms first, top and left. Again, like ever since I've been programming in CSS I'm like, that's how you move stuff. But now it's not. In my brain now it goes to Transforms first which is great because it's more versatile and there's also like a 3D element to it which you can pull off pretty easily and you can scale it and if you know how to do all those matrixes and whatnot, dig in. That's all available to you. And the last one on this is that pseudo elements was another thing that I've really gotten comfortable with over the course of this. Both of those guys standing on the skip button those aren't DOM elements. Those are just pseudo elements on the skip button. It doesn't add any extra space because again we were running into the problem of having just too many DOM elements. So this is how you do curved pads in CSS. It's, I can show you just a quick example here of another game that I was working on. This one? No, this one? So I'll check this out. Like these are originally password dots. I don't think they are anymore. But I was working on a game that was like bees that fight each other. And so yeah, this is the swarm, right? So you can see this is all done in, you know all done basically in CSS. Just when the CSS ends, you know it starts a new one to give it those different curves. So I gotta speed this up. I thought I was, you know all of this following around with a cord. The events. So like you saw with that, you know the bees there. You can bind in jQuery just bind, you know WebKit animation end or WebKit transition end. And just in general, I think it's probably a good idea to start using those whenever possible. They're just so much, they were just so much more convenient. And I think that the things that are coming out in jQuery, they'll probably just start using them anyway. But for now it's not, it doesn't hurt to, you know, get used to it. The second one here is click and touch start. This is, there's a huge difference between the two. If you click on the iPad, if you bind to click it waits like 800 milliseconds before doing anything. Which is usually fine if you're, you know like on just a, you know like a normal mobile app or whatever.   So we're using a mix of them because like for buttons people like to see the button move down before something happens. So you can just add an active state in CSS and voila, you know, it goes down. But for like things that need to respond quickly, touch it and then there you go. Another thing that we found out that worked really well is this e.original event when you bind to things like touch start. So this will give you on, this will give you, you know like the touch, the array of actual touches when you're on the iPad, which is so important for like that dragging and that sort of thing because it's, there are so many great libraries that I wish I knew about like six months ago. You know, hammer.js, that's fantastic. So you can, but if you wanted to, you know do it yourself for whatever reason because they're, especially with games there's a lot of like weird edge cases that you have to program for. So it's good to know that stuff. And then like on orientation change was another one that we don't use anymore. But when I figured out that I could do that that was pretty cool. So for now, now a little bit of jQuery finally since we're at that conference. So I use this plugin building like they said, you know like it's a great, it's great to know how to do it. And I use it mostly for like building for building DOM elements and stuff like that like make the social buttons and stuff like that. So it'll just kind of like ask what social networks are available and build the appropriate buttons on purpose. And then I can just chain that into one big append call and that's good. The other one that really came in handy was dot data which I didn't even know about, you know I'm ashamed, I'm ashamed to say I didn't know. But yeah, it's so great like with those feeds and stuff like that, if you wanna challenge somebody you can just put all of the data into the button and it'll just hold onto it in case they click it and that's just so easy. And the code looks so clean. So that made me happy. And that's it. And then like I said, put it in an iFrame use it and toss it, you know they're really old technologies. So you might as well treat them like Kleenex, right? I mean like, that's totally good. Okay, so but in HTML5, I mean the big mission obviously is to try to make it run on every screen, you know. So with WebKit, obviously we found it very easy to move pretty easy to move at least to the phone, the iPhone and that sort of thing. And Android we're really pleasantly surprised when we're like, let's see if it runs on my phone. It does, you know it does guys, wow. You know, so that was very happy day also. So the only difference there is that we did we should have thought more about responsive design originally just so that it would change to the right sizes for the most part it did but there was still a lot of stuff that had to change. And then the big gap, especially for this kind of stuff that's really sensitive, we're transferring a lot of sensitive data, not only things like are they paying which obviously is probably the big one but you know in games it's also just like, what did they score?  So that's still kind of a problem. People are really good at that. They're probably all in this room now that I think about it. So yeah, that's still a problem that we're kind of facing. For the next stuff that, you know, like now that we've done this first example and it works and it's making money. Yeah, thank you, thank you.  I don't know what I was thinking with this slide exactly but yeah, this is the next stuff I want to learn. So if anybody wants to do a project, you know, I'm right here. So yeah, and then I'm wrapping it down now. So I wanted to just thank, you know, the community who has helped so much. JS Fiddle is fantastic. I wish that the jQuery was just selected by default instead of MooTools. You guys use JS Fiddle? Yeah, it's so good, right? Yeah, I would say, yeah. I would say boo them for the MooTools but boo sounds like moo and so. Might get confusing. So yeah, there's a lot of CSS3 generators which not only save time but also just, you know, taught me a lot through that stuff. Stack overflow, obviously. Now if you see me on there, you can read what I write in my accent. So thanks. And there's a lot of people I follow on Twitter. So you can follow me, I've only got eight people right now so that's sad. And the jQuery team has also been pretty helpful. So yeah, that was my sort of Oscar bit. So okay, good. So in summary, keep the scope really, really simple. There's no shame in it, you know, like a lot of game designers are like, or game developers are like, I want it to be awesome. And you know, like it'll change the world and stuff like that. Like why not make tic-tac-toe? You know, just try it out. It's really no problem. It's a good learning experience. It really is if you get the chance and it's good reason to use phone gap and that sort of thing.  Find a little psychological problem in humanity and exploit. So that's good. Disposable iframes. I know that probably if anything is gonna get me in trouble, it's this thought. But you know, it just worked. It worked so well for what we were doing. You know, just occasionally throw it away, pop up an ad or whatever, you know. It really did just work fantastically. Draw with the DOM.  So yeah, move stuff around. Save data in data. You know, that should be fine, but I didn't know, so maybe I'm helping someone. That's it. And don't favor a single technique. The biggest thing with all of this is that like the CSS transforms, instead of using animate was a big change. The data was a big change. There was a lot of things that just changed, you know. And a lot of things that changed depending on what iframe I was in, you know. So it's like, you have to, people say HTML5, you know, is not ready for games yet.  But you know, the big thing is that don't become too concentrated on specific ways of doing stuff. You have to, like I said, it's a great learning experience because you're not sharpening just one blade when you go at it, you know. So that's that. That's it. Oh, good. On time. Thank you, everybody. Thanks. But. All right.


Dimensional analysis and similarity arguments based on dimensionless groups have been used since 1914 to analyze systems in various fields such as science and engineering. These groups are typically divided into three categories, geometric similarity, kinematic similarity, and dynamic similarity. A fourth category, entropic similarity, has recently been proposed, which is based on ratios of entropy production terms, entropy flow rates, or information flow rates. This study demonstrates how many traditional groups, including the Reynolds number, can be recovered using entropic similarity with a different interpretation, while many new groups can also be identified. The analyses significantly expand the scope of dimensional analysis and similarity arguments for the resolution of new and existing problems in science and engineering. This article was authored by Robert K. Niven.


Well, it's a new position that IID has created, the position of the chief economist. I think the Institute has been motivated by all the discussions around an inclusive green economy, and all that entails, and therefore they want to bring together their work around this area. I mean there are economists in IID, many of whom are working on important issues around an inclusive green economy. Ond y gallwn hwnnw i'r postau gwirioneddau hynny i'n ddych chi'n gweithio'r cynhyrchu llwyffordd o'r cynhyrchu'r cynhyrchu, o ddod yn ddod yn cymryd iawn i'n ddod o'r arddangos cyfasio mewn gweithio'r cynhyrchu a'r cyfosib gyda'n gweithio'r cynhyrchu a'r gweithio'r cynhyrchu'r cynhyrchu. Yn gyfrifoedd y gallwn i'r cyfrifethau ar y cyfrifethau sydd wedi'i gwirioneddau ar gyfer cyfrifeddau both in the public and private sphere, in developing countries, in Capitals, in OECD countries. In terms of the private sector, I started my career with an environmental economics research company based in London called F-Tech, which is still going strong. I then have worked with development agencies, ddiwrnod o'r Ffidol i'ch ddannig i'w meddwl i'r Unig Lleiddoedd Cymru, i'ch ddiwrnod o'r Ffidol i'ch ddiwrnod, ac i chi wedi'i ddweud yma ymlaen i'r Ffiddor i'r ymwneud i'r grwp hyn sy'n ymgyrch yn ymgyrch, i'r shlanker, i'r ymgyrch yw'r ymlaen i'r eich sgoledig, i'r ymwneud i'r ymgyrch, i'r ymgyrch yw ymgyrch yn ymgyrch yn ymgyrch i'r ymgyrch, ddweud i chi'nirlio i chi'n ffordd, oedon iawn, ond ddweud i chi'n mynd i'r ffordd. Rwy'n meddwl gwrs, mae gennym ddweud i Hywbeth i Asia Pacific o'r program ynghyd gyda'r unrhyw yma o'r ffordd o'r ddechrau'n dweud o ddweudio i Gweinidol a Gweinidol. Felly, rwy'n wedi'n rwyf wedi bod yn dweud i'ch bod gennym digon yn gwneud ychydig o ddweud o'r ddweudio i'ch gwirio'r ddweudio i eich gweinidol. I think IID has, over the years, since its founding, really focused on trying to bring the voices of the poor and the marginal into national and global debates. So I see my role to try and do that and bring those voices into economic decision making and economic debates. So I'm hoping, as I said at the beginning, to focus around an inclusive green economy and what that means and how that can be made relevant for poor people and how they can ensure that they don't suffer any short-term costs during the transition to a green economy. But it's also an exciting time in terms of the move towards the Sustainable Development Goals and hopefully a climate agreement and I'm keen to work with other colleagues in IID looking at the role of finance to implement the Sustainable Development Goals and to implement the climate agreement.


The digital transformation is really just beginning and it's a crime candidate for vast new growth. Like any great transformation, the costs are enormous but the benefits are enormous too. More value is out there for society than for industry. But the real costs in terms of jobs, in terms of identity are still to come. So the question we will have to address is how do we help the transformation for those that do not benefit and actually could be subject to changes that are going to be more painful and difficult for them. Every role is going to change. Some are repairing a windmill, some are managing a retail store and some are getting ready for customer meeting. All those roles are going to change because of how information technologies create that change. More and more of our work is being automated. Are we prepared as a society to give our children the skills that they will need to succeed, to thrive? The evolution of digital media on the ubiquitous axis of knowledge is creating a bifurcation between those that have the right skills versus those that have insufficient skills. They are at much greater risk of job replacement or automation. Data scientists are some of the most precious skills in the digital economy of educating and producing more people with the right skills to be data scientists. It requires a lot more collaboration across businesses and with businesses and government and universities and educational systems. It's not until information is brought together the more of it that you have, the more access, the more diversity that's going to make the heart of it some of these transformations that are occurring. You need a trust as a foundation, a trust worthy ecosystem with the consumer at the center of that ecosystem. At the moment you can delete your Facebook account it will still store data about you. I believe that will change. I believe citizens will demand that change in the government. The big data revolution doesn't inevitably destroy privacy. It depends on the business model. How can we reinvent the digital economy so that we aren't the products? The way to disrupt things is to go back to paying for services and products and platforms. One of the biggest challenges we see is for initiatives which are hugely valuable for society but have very low value for industry. Where there is a large value at stake for industry and society that's what we call the true north. The Digital India initiative that's being spearheaded by the local government they have over 200 million people who are joining the financial services sector that means that they have now bank accounts they have access to credit in the last year or so because of technology. We develop tools that enable business and government leaders to make the best decisions to affect health and social outcomes at a large scale.  Innovation happens everywhere. We have to keep our eyes open and where is the innovation and what the citizens are actually expecting from us. Better, faster, cheaper services, more efficient, seamless. Any disruption that's happening in all the sectors will happen in government and it's happening in government.


Hello everyone, I am Mrs. Sunita Doher. Topic covered here is bottom-up passing ala-passing. In this video we are going to consider bottom-up syntax analysis technique that can be used to pass a large class of context free grammar. Learning outcomes. At the end of the session students will be able to know about ala-passer and pass the string using ala-passer. Ala-passer K is a bottom-up technique to pass a large class of context free grammar. The F is for left to right scanning of the input, the R is for constructing the rightmost derivation in reverse and K is for the number of input symbols of lookaheads that are used in making passing decision. When K is omitted, K is assumed to be 1. Ala-passing is attractive because ala-passer can be constructed to recognize virtually all programming language construct. Ala-passing is most general non-back-tracking shift reduced passing. The class of the grammar that can be passed using ala-method is proper subset of the class of the grammar that can be passed with the predictive passer. And ala-passer can detect a syntactic error as soon as it is possible to do so a left to right scan of the input. The principle drawback of this method is that it is too much work to construct an ala-passer by an hand for a typical programming language grammar. For this specialized tool called ala-passer generator is required. It covers wide range of grammars SLR that is simple ala-passer, then canonical ala that is most general ala-passer, LA-ALA that is intermediate ala-passer. SLR, LR and LA-ALAR work same only their passing tables are different. SLR is easiest to implement but the least powerful of three. Canonical LR is the most powerful and most expensive and look ahead LR is intermediate in power and cause between the other two. A schematic of ala-passer is shown in figure on the slide. It consists of input, output, a stack, a driver program and a passing table that has two parts action and go to. The driver program is the same for all ala-passer only the passing table changes from one passer to another. The parsing program reads the character from an input buffer one at a time. The program uses a stack to store a string of the form s0, x1, s1, x2, s2 and so on up to xm, sm where sm is on the top. Each xi is a grammar symbol and each si is a symbol called state. Each state summarizes the information contained in the stack below it. The combination of the stack symbols on the top of the stack and the current input symbol are used to index the passing table and determine the shift reduce passing action. A configuration of an ala-passer is a pair whose first element is the stack contained and whose second component is an expended input s0, x1, s1 and so on up to xm, sm stack contained, ai, ai plus 1 and so on up to an input. Sm and ai decides the passer action by consulting the parsing action table. Initially stack contained just as 0 and configuration of ala-passer parsing represent the right sentential form x1, x2 up to xm, ai, ai plus 1 up to an dollar. In essentially the same way a shift reduce passer would only the presence of state on the stack is new. Ala-passing action, if the action sm, ai is equal to shift s, the passer execute a shift move entering the configuration as 0, x1, s1 and so on up to xm, sm comma ai, ai plus 1 and so on up to an dollar. So, this derives to s0, x1, s1 and so on up to xm, sm, ai, s comma ai plus 1 and so on up to an dollar. Here the passer has shifted both the correct input symbol ai and the state s on the stack. If the action sm comma ai is equal to reduce a derives b then the passer execute a reduce move entering the configuration given here where s equals to go to sm minus r comma a and r is the small r is the length of b the right side of the production. The passer first pop two r symbols of this stack exposing the state sm minus r. The passer then push both a the left side of the production and s the entry for go to sm minus r comma a onto this stack. The current input symbol is not changed in the in a reduce move. The output of a allow passer is generated after a reduce move by executing the semantic action associated with the reducing production. If action sm comma ai is equal to accept, parsing is completed. Error, passer detected an error. So, that is an empty entry in the action table. Algorithm, allow passing input and input string w and allow passing table with function action and go to for grammar g. Output, if w is in a language of that grammar g a bottom of pass for w otherwise an error indication. Method, initially a passer has a 0 on its stack where a 0 is the initial state and w dollar is in the input buffer. The passer then execute the program until and accept or the error action is encountered. In this algorithm four moves are explained which we already considered on the previous slide. Initially said input pointer ip to point to the first symbol of w dollar. Repeat forever begin, assume that s be the state on the top of the stack and a the symbol pointed by the input pointer ip. If action sm comma ai is equal to shift s dash then push a then s dash on the top of the stack and advance the input pointer ip to point to the next input symbol. If action sm comma ai is equal to reduce a derives p then pop 2 into length of beta right side of the production symbols of the stack. Let s dash be the state now on the top of the stack. So, push a then go to s dash comma a on the stack and output the production a derives beta as if action sm comma ai equals to accept then return as error. Consider the grammar e derives e plus t e derives t, t derives t star f, t derives f and f derives e or id and the passing table for this grammar. In this passing table s i means the shift and the stack state i, r j means reduced by production numbered j, acc means accept state and blank means error. On the input id into id plus id the sequence of the stack and the input contained is shown on the slide. At the line number 1, allow passer is in state 0 with the id the first input symbol. The action in row 0 and the column id of the action filled in the passing table is s 5 meaning shift and cover the stack with the state 5. This is what happened at line number 2. The first token id and the state symbol 5 have been pushed onto the stack and the id has been removed from the input. Then star becomes the current input symbol and the action of state 5 on the input star is to reduce by f derives id. Two symbols pop of the stack, one the state symbol and one grammar symbol. State 0 is then exposed. Since the go to of state 0 on f is 3, so f and 3 are pushed onto the stack. We now have the configuration given on the line number 3. Each of the remaining moves is determined similarly. So till now we consider allow passing algorithm. Now pause this video and reflect on this question for a minute or 2 minute and write your response. Once you return the answer to this question then you can start playing this video. The question is pass the string id into id using allow passing table. I hope all of you have completed this activity. How to pass this string using allow passer is given on this slide. This is the reference used for preparing this presentation. Thank you.


The sharp increase in thyroid cancer incidents worldwide is likely due to a combination of increased detection of small cancers through more sensitive diagnostic procedures, and a true increase resulting from increased population exposure to radiation and other unrecognized carcinogens. This article was authored by Gabriela Pellegriti, Francesco Fasca, Conchetto Regalbuto, and others.


This single Asian-American man is wondering why he mostly only matches with Asian-born women on the dating apps Even though he's born in America. Let's talk about why the unexplainable quandaries of Asian-American life Especially for Chinese Americans. Let's get into it. Um, he says he's a 28 year old male. He lives in the Bay Area He's Chinese-American, but he's only matching with girls that were born in China Hong Kong Singapore Taiwan on the apps And he basically was like, why is that? I don't get it. I'm Asian-American. I'm born in America I feel like I'm pretty American. How come I'm only matching with fob chicks? Oh, man How much self-awareness can you lack my friend? Oh my goodness Hopefully you watch this video and hopefully it's insightful or helpful at all. Listen guys Check out smile I saws at smile I saws.com. It is available for pre-order We sold out the first batch the big next batch is coming in Andrew let me start off by this book reading an excerpt from a book by Lois Lerner Andrew This is a book you can check it out in Amazon right now called Asians don't date Rita Gao and Kai Chung are out across world roads as Asian Americans They've dated their social engineered lanes. Kai only dates Asian women from Asia and Rita only dates white men And this is an actual book that is written about social engineered lanes So yeah, I guess what I'm trying to say is it's pretty common for Asian-American guys to date fob girls It's not as common for Asian-American girls to date fob guys I know a couple Korean girls who did it but outside of that. I almost never seen it. Okay, so I guess my Questions for this guy making this post because he doesn't post any pictures of himself. He didn't post his Tinder hinge or coffee means bagel profile. He didn't he didn't show us what he looks like and what he's writing But I can tell you this that especially in the Bay Area if you are only matching with Asian-born women That is because you appear to be Asian-born now That's not necessarily a bad thing if you're one of the stylish type But you have to understand and look at yourself if you have the black rim glasses I don't know how he looks you talk about the square joints. Yeah, but if you don't even have one of the American or stylish haircuts like a two-block cut a faux-hawk a pompadour a man bun a hard part or the messy French crop And you're an Asian guy you pretty much Probably appear like a I'm guessing an Asian-born computer programmer Which is nothing there's nothing wrong with that, but you just have to understand you're not gonna get the mass pool You're not gonna attract a lot of Asian-American women that or he could be more in the church lane Like there's sort of this like church Asian guy look that appeals more to Fob women and also it depends on what type of fob women is he even matching with like the hyper stylish ones with tattoos Which are starting to like becoming I'm guessing not I'm guessing not right right right um people go on to break it down And would you agree that coffee meets bagel is more for people who want to get married though? Yes So here's the thing about coffee meets bagel shout out to coffee meets bagel by the way It is more for serious daters and people who are looking to actually date and not just for fun But with that said I think the slightly more wholesome branding and the wholesome crowd means that there is gonna be more Traditional women on that app so therefore there are more Asian-born women and women from like even other countries who are more Looking for a relationship not just to have fun Right there. I'm Derek. I'm looking to marry eventually you take me serious Yeah, obviously the other apps are a little bit more American eyes, but I'm saying clearly this guy's profile doesn't sound like a fun I'm just trying to I'm a cool guy trying to have fun And you know what the weird thing is a lot of ABC guys and particularly as the Chinese American guy thing because I think they lack The most bro coaching out of to be honest every single Asian group on an aggregate average medium basis Sometimes they will like want ABG Asian-American girls But not look anything close to like what the realm of a ABG or even a ABG s girl likes Yeah, listen, there's nothing wrong with fob women man. I will tell you this my My first girlfriend in LA was a fob and we met in the most fobbyist manner She was a fob from China from Dung Bay. Yeah from Dung Bay. She was from Liaoning and we met on we chat I was on we chat at the time and we ended up connecting and she was very pretty good Looking she had she liked to have fun. She her English was heavily accented You know, I learned a little bit of Chinese through her but mostly we spoke English because she was trying to work on our English at the time and Yeah, that was my first real fobby girlfriend and there was nothing wrong with her I think for me there was a slight cultural riff because I think she was a little bit Too fresh, you know what I mean like she didn't like go to college in America and stuff like that But anyways guys what I'm trying to say is if you're only attracting fob women There's nothing wrong with that. Yes, but you just have to know why you are so don't lack some self-awareness There's nothing wrong with having your dating photos be at omakase be at hot a nice hot pot restaurant KBBQ nice Thai restaurants But you have to understand that is more catering to women from Asia because women from Asia typically spend more Higher distribution pie slice of their time at those type of spots. Yeah Like if you're trying to attract Asian-American women or Americanized women of any sort you'd have to show yourself in more like American context like you with non-Asian friends Or you doing something that's very American you at a bar like not just at Asian restaurants doing super Asian things even though maybe that's what you like to do Yeah, I think that you know, obviously we talk about both sides of it a lot on this channel Like maybe do Asian women give Asian guys the most chances in the world before they jump to a white guys Probably not but do Asian guys also understand the game in the IQ of the gameplay and the play action and the schematics enough Probably not for sure to dude I know a lot of Asian dudes and I've seen a lot of these profiles of Asian guys That I will tell you this a lot of Asian dudes out there Just do not have self-awareness and do not understand how they're being perceived Chinese guys Especially Chinese guys, but you got to keep it real with yourself and get some real feedback Somebody said lots of Chinese born women see ABCs as higher status notice. I didn't say all but it's definitely a thing Here's what I noticed the really rich super hot for dye girls, which are like the super I'm talking about like millions millions super millionaires talking about the rich Beautiful Xiaohong Shu little red book stylish They're looking for usually the guy equivalent, but yeah, you're right There's more like it depends if they went to international school American school Canadian school half English school There's like bilingual schools now that are not politically affiliated. You have to understand that whole breakdown But I will say this sometimes fob women view Asian American guys like we're hoppas the way like an Asian American guy views a hoppa That's how they view us give spotted a few extra points Somebody said I feel like it's a girl not from the US is an upgrade to a lot of Asian American females because at least they're Proud of being Asian Yeah, that's another comment I mean, I think it's it's a mix and match but that certainly could be true Somebody said the dating apps are just overrated in general nowadays and there was a bunch of arguing over that Of course, here's the thing man If you can figure out how to have leverage on the apps and you can deal with the ghosting It's still better because it's still widening your pool way beyond who you can meet on a regular day-to-day basis, right? So exactly I agree Of course, um people, you know talking about cmb getting married like you said Andrew people are talking about Let me see your profile because how your profile looks will lean you into one direction or another because this other guy was saying Man, I'm really free spirited in my profile. I got a lot of photos outdoor I got long hair and I attract a lot of white women Exactly see you look like a free spirited spiritual free I don't even know like uh like a healer like a Outdoorsy guy dude dude non-Asian particularly white women love outdoorsy-ness Yeah, or America looks yeah, Asian-American women like to see you in the outdoors too. Yeah.  They look a lot better too or like the Like just the image is a lot different than 10 20 years ago.   They like asian food. They like asian history. They like asian music and stuff Yeah, fob women can be great man. They're like more in tune with the culture They're generally I guess they embody a little bit more like traditional values They can go to 88 prizes and concerts together. Yeah, they appreciate like the asian man even probably on a higher percentage basis, but anyways guys, uh, listen This guy clearly is uh having dating issues and he can't understand why and that's too bad But hopefully this video helped and hopefully this helped anybody out there who's wondering the same question Yeah, let us know what you guys think of the comment section below until next time. We're the hop hop boys. We out. Peace