A distinguishing trait of aerospace technology is its inevitable change. The Air Force has always been dedicated to the advancement of science and engineering. As a result, it is continually applying new technologies to the production of superior weapon systems and equipment. This commitment becomes increasingly important as weapon systems become more and more complicated. In the Air Force, technology deals with the tools and techniques for carrying out the plans of our national defense. The direction and development of this technology is the mission of the Air Force Systems Command. More than 50,000 employees, including an officer corps in which nearly two-thirds hold advanced degrees, are carrying out this mission for one purpose. To advance aerospace technology so they can acquire superior Air Force systems at the most effective cost. By its very nature, much of this work is directed toward the future. AFSC is now laying the foundation of the future Air Force. Today, the command is planning for some of the most sophisticated aircraft ever imagined. Concepts are now under study for the advanced tactical fighter. Planners must consider what the defense threat will be at the end of this century, and what technologies we can count on to be available. These same considerations are critical in the development of future airlift systems that will deliver vital logistic support in the event of war. Bomber programs must likewise account for tomorrow's missions, payloads, and the type of environment in which these aircraft will operate. Some future aircraft will likely operate both in and outside the Earth's atmosphere as trans-atmospheric vehicles. An aircraft which went through these types of studies well over 20 years ago is now emerging as our new strategic bomber. The B-1 will have a radar signature only a fraction of the B-52s. It will contain advanced avionics systems to provide increased penetration capabilities. Along with its intercontinental range, it will have tremendous weapons carrying versatility, including the ability to carry cruise missiles both internally and externally. This aircraft and its subsystems represent planned advanced technology that is now materializing to fulfill a specific Air Force mission. In the meantime, AFSC scientists and engineers acting for the Defense Advanced Research Projects Agency are studying other future design technologies such as those in the X-29A. Its unique feature is the forward swept wing design. Among its potential advantages are lower drag, high maneuverability, flexibility in design, and reductions in size, weight, and construction costs. Because of the stress on forward swept wings, a bonded fiber composite is used to increase the strength of the wings without adding unacceptable weight penalties. In addition, the X-29 has variable camber devices to alter the wing shape for changing flight conditions. In another area of flight technology, the AFTI F-16, or Advanced Fighter Technology Integration Program, has recently completed a one-year flight validation of a sophisticated flight control system. A computer-controlled flight system, along with some new control surfaces, allow this modified F-16 to maneuver laterally, change altitude without pointing its nose, and perform other unconventional maneuvers. The command is developing another flight control technology in the Integrated Flight Fire Control Program, or IFFC. The goal of this research is to integrate the flight control and the fire control systems of an aircraft so the pilot can make the necessary gross steering adjustments to align a target. Then the fire control system takes over the fine steering adjustments to direct the aircraft into a firing position. Although this technology is being demonstrated on the F-15, it is generic in nature and could be applied to any modern fighter. To evaluate the IFFC system, a series of flight tests was conducted. It was first flown against towed targets in live firing demonstrations. The system allowed the pilot to destroy the towed target. Then the aircraft flew against various manned aircraft in a variety of difficult angles and maneuvers. Even at difficult angles, the IFFC system scored numerous simulated hits on the targets. In a final demonstration, the F-15 was pitted against a full-size radio-controlled drone for a live fire test. The drone was scheduled to fly a series of maneuvers, beginning with the most difficult aspect angles at about 4G. The F-15 trailed 18,000 feet behind. The drone went into a 4G turn at 400 knots. The F-15 pilot also went into a turn, and when closer to the target, he coupled the IFFC system. Of the rounds fired, the system scored an unheard of percentage of hits at that difficult an angle. This amazing success verified that the aircraft gun could be an all-aspect weapon and not merely used to hose down targets from behind. The command is continuing development of the integrated fight-fire control system to adapt it to the air-to-ground gunnery and bombing modes. Future aircraft, whatever their configuration and advanced systems, will also be employing new materials for major structural parts. The command evaluates new materials as it continually seeks to improve the critical strength-to-weight ratio. One of the most promising developments is boron and graphite composites. Systems command engineers have already demonstrated that this material can equal or better the performance of metals in primary structures, like wings, and that it can be repaired after sustaining minor battle-type damage. Research is continuing into the repair potential of this material after severe damage. Some Air Force aircraft already contain composite materials, but as new aircraft enter the inventory, they will be built with even more advanced composites. Just as the technologies of new materials are accelerating, so are the processes used to build materials and aerospace systems. A major thrust in this area is the integrated computer-aided manufacturing, or ICAM, program. This effort is aimed at increasing the productivity of the aerospace industry in the United States. The command is advancing the state of the art in basic aerospace manufacturing technology and methods to establish a uniform system in the aerospace community. A system that integrates various stages of manufacturing processes could benefit all major areas of contracting work. By managing efforts involving the latest in computer technology, AFSC is striving to develop an overall ICAM architecture that could be individually tailored to accomplish almost any manufacturing task. On the shop floor, this would manifest itself in computerized machinery and robotic systems that perform both routine and complicated tasks. These systems would produce cost-effective and quality items for future Air Force products. Work of this type is, at the same time, advancing computer and other electronic technology. Perhaps nowhere is this more evident than in the area of simulation, where systems command has been a major developer for several years. The Air Force uses simulation for a variety of purposes, such as evaluating new hardware and software systems, part-task training, studying human performance in dynamic environments, and basic flight training. In order to make simulation even more valuable and cost-effective, the command is developing new computer-generated video imagery. It is stimulating this technology, so future pilots and other users will see high-resolution video with realistic features and texturing. Another way in which systems command is moving the Air Force further into the future is through the development of new fuels for aircraft and missiles. Because the range of a vehicle can be directly related to the density of the fuel used, the command guided the development of new high-density liquid fuels for cruise missiles. Missile's volume limitations made denser fuels a logical solution for obtaining greater standoff range. These fuels increase standoff range by delivering more energy per gallon, providing greater aircraft and aircrew survivability and effectiveness. With the advancements in high-density fuels, it now appears that the development of liquid fuels has reached a practical limit. Therefore, AFSC scientists and engineers have turned their attention to possible alternatives, such as carbon slurry fuels. Research work in this area led to the development of a slurry fuel which can produce about 50% more BTUs per gallon than the standard jet fuel, JP4. One of the main problems in this work was devising a formula that would keep solid carbon particles suspended in a liquid-blending fuel. As a solution, carbon slurry fuel also contains a surfactant, enabling the fuel to remain well mixed over long storage periods and under a variety of environmental conditions. At present, researchers are evaluating this fuel to ensure its use in non-exotic fuel systems. Another alternative fuel, which shows promise, is produced by extracting oil from shale. Mining this product is currently more expensive and complicated than producing conventional petroleum. However, it can be produced in an environmentally safe manner and has the potential to become a valuable air force fuel. Although the air force is not directly involved in the mining or production of shale oil, it is interested in its future potential. Therefore, systems command is evaluating the use of shale-derived jet fuel in current air force engines in order to expand the availability of hydrocarbon fuels to meet air force needs. Unravelling nature's mysteries and adapting them for air force needs is just part of AFSC's job when it comes to developing technology. This is especially true in the area of laser research. Harnessing light and making it work for the air force has been a continuing area of study in the Air Force Systems Command for over 15 years. The first laser units were small and of relatively low power. Many low-powered lasers are serving today as laboratory tools for a wide variety of applications. But the air force has another interest in lasers. Lasers of much higher energy that could be used as weapons. Because laser light can inflict damage on almost any type of material, AFSC scientists have conducted many tests over the years to determine how different types of high-energy lasers affect the materials used in military hardware. In this way, they are gaining valuable insight into how the laser can be used as an important tool in our national defense. In the early 1970s, the command conducted the first test of a high-powered laser against a flying target. In this case, a small drone. Because the laser energy travels at the speed of light, it can strike the target almost instantly, minimizing the need to lead the target as with a conventional weapon. Although this test illustrated the potential of laser weapons, the pointer tracker system had the advantage of being securely anchored to the ground. Transferring this technology into an aircraft presented a new set of problems as far as the laser platform was concerned. To assess this problem, the command established the Airborne Laser Laboratory as a technology demonstration base for airborne laser development. It was a specially modified KC-135 outfitted with a carbon dioxide gas-dynamic laser system. On top, the laser pointer tracker. In 1983, this flying laboratory tested its capabilities against an airborne target and aim nine air-to-air missiles. This experiment demonstrated the feasibility of tracking and engaging small, fast-moving targets.  The laser beam was held on the designated aim point until the target was destroyed. Space-age technology is nothing new to the Air Force Systems Command. Scientists and engineers have been engaged in creative problem-solving for many years. Part of this effort has been channeled into the NavStar Global Positioning System. Six NavStar satellites are currently in orbit. 18 more will be launched to provide precise navigation on land, sea, or in the air anywhere in the world. The command also develops and launches the Defense Satellite Communication System, which has been in operation since the late 1960s. A new phase of more powerful and longer-lasting satellites is being developed for the Department of Defense to provide voice and data communications virtually around the world. The inertial upper-stage booster is another development of AFSC. It was designed to place satellites into geosynchronous orbits using expendable space-launch boosters or the reusable space shuttle. These diverse technologies that are the future tools of our national defense are but a sampling of the wide spectrum of scientific and engineering programs under AFSC's management. Through a concerted management effort, the command's workforce is exploring technologies for every measure of practical knowledge that can be applied to Air Force Systems. The fulfillment of this effort is directly related to this workforce, one of the most highly educated and dedicated groups of scientists and engineers in the world. They remain dedicated to today's technology, extending toward its outer limits. And in so doing, they are shaping the Air Force of the future.


Hello again, everyone. I'm Ray Gildow, host of Lakeland Currents. Join me this week as my guests and I talk about the unique programs going on at Camp Ripley.


This is Think Tech Hawaii, Community Matters here. Hi, welcome aboard and happy Halloween to everybody. Here we are at the Think Tech Hawaii, and I have my co-host, Natalie. She's a farm manager at Olamana Gardens in my right hand and left hand person. That's it. She's double-handed. Well, we've got some exciting stuff to share with you today. First off, news-wise, current events is you have to November the 6th. That gives you about six days from now to sign up to go down to the Big Island for an all-day conference. It's at the NELHA, N-E-L-H-A. And that is that big aquaponics aquaculture set up at the end of the airport runway. So if you land at Kona, Kailua Kona on the Big Island, you will see it when you fly in. That's all those big algae tanks and sorts of that going down. And what's special about it is this is the first of a series of planning conferences getting ready for 2020. We're going to host an international conference here. Now, Natalie and I got to participate with Dr. Benny Rahn. That was about two years, three years ago.  And when they flew in people from Israel, from Germany, from China, Madagaster, from all over the world, they flew them in here and there were about 350 of us attended that. And Natalie and I got to be presenters at it. So we're going to be flying down. This is coming up. The event itself is on November 14th, I do believe. And for information on it, you can go to our web page or they have their own web page advertising it. And Natalie will pull up the information for me. That'd be great. And it's only $50. And when I say only $50, it goes from 8.30 in the morning to 7.00 at night. The feed you lunch, the feed you dinner, right? And you're getting to meet with all the movers and shakers. And so the title of the thing is for Blue Hawaii. And it's basically how to promote aquaculture and aquaponics in Hawaii. And down in Kailua Kona, the big thing is the offshore fishing, where they hang the nets down in the water and then they graze the fish out in the open ocean. And at this NEHA station there, Natalie and I have gone down. We go down about every six months or so. And that's where they breed the little babies. So they breed the little babies up and then they move them out into the ocean and they grow them out. So every time we go to one of these conferences, one of the things you get is a free tour of the place. So we get to see the abalone growing. These are million-dollar operations. So it's a real treat to go.  But this is an all-day conference and really looking forward to it. And while we're down on the big island, what else are we going to be doing, Natalie? Yes. So we're going to be doing a workshop. Glenn has an airlift pump, or what we do different in aquaponics at the YWAM University of the Nations. Yeah, right there in Kailua, Kona. So that's about a 1,200 student body there at that college. It's a four-year college. They specialize in training missionaries. And people want to go out and be a missionary for whatever their religion is. When they go out, they need to know how to conduct themselves, what to do. But one of the things they found out, whatever book you're carrying, being in a Bible or whatever the source of your foundation of your religion, when these missionaries go out, they need to have practical skills in that they need to be of a benefit to the community. Fix a roof, fix a solar cell, do aquaponics systems, et cetera. So they have courses in what they call applied engineering. So if you are a missionary and you show up in a community, you can do something more than just preach out of or share your message. There's something to a practical, physical aspect to it. And so we've been going down there for several years. And we're going to be doing workshops down there on the 15th and 16th on the college campus. And you can go to our webpage at www.allamontagardens.com and you can sign up for them. It's great stuff. And they have a really nice aquaponics system at this University of Nation. And YWAM, by the way, stands for Youth on a Mission. And Will and Young.  I met these people over on Kauai after Hurricane Niki. They sent about 40 or 50 people over there and we built a camp for them. And they went out and volunteered in the community. Everything from tarping houses to food kitchens, the whole thing. And so a great bunch of people to work with. And it's kind of funny when you meet them, you start getting postcards. They go to Russia, they go to Israel, they go to India.  So it's a passport to travel. It reminds me very much out at BYU with the Mormons. When you pull in, they have a series of flags around a circle where you drive around. And I'm going to paraphrase it, but basically there's a big sign there.  And that is it. So what they're trying to do is teach people things that they can take out to the world on a very practical level. And that's where we went down to with Master Cho. When he had his first Korean natural farming seminar here in the big island. In Hilo? Yes, in Hilo. And we spent the week with him in Hilo. And then we went on farm tours. For two days we toured farms. Yes. And that was one of the places that we was able to go and see what they're doing there. Now keep in mind, we're south of Hilo, we're down in the Puna area. And they were hoping to have 50 people show up. Somebody did some fundraising, got a grant about $10,000 to bring this Master Cho over from South Korea. And he came there to do it. We not only had 50 people, we had 100 people, then 150 people, then 200 people. And we had to move the venue, the University of Hawaii, to their agricultural station. And they said, don't worry about it, you'll never fill it up. It can hold 300 people open there for a billion. Well, we had 350 people come. And again, it was one of these things, $50 for a workshop. And that's just, they find out if people pay 50 bucks, they show up. If you say it's free, maybe they go, maybe they don't go. But a lot of these things, the seating gets limited because they do get oversubscribed. So if you're interested in aquaponics or aquaculture, you're probably spending more for the plane ticket than you do to get into the thing. Like our plane ticket is $75 to get down there. But on the other hand, for a $50 all day conference with your peers, a lot of university people, a lot of industry people, and you get to see what's really happening. But then when we do over at the college the next day, we'll be doing the workshops over there. On Saturday. On Saturday. The actually day and a half later. We're going to be doing it there and giving tours of their facility. And that's a no charge thing to come over and take a tour of their facility. They open it to the public. But a great group of students. And there, that'll be a hands on day. And because like when we do the workshop at the nail hop, there'll be a lot of PowerPoint presentations. You'll be in an air conditioned room. Yeah, and you go out to the facilities. But when we do the workshop over at the University of Nations, that's all hands on outdoors open their pavilion. And that's because my stuff is messy. Yeah. And then we have some videos that we shot for you just to give you an idea of what we do with the air pumps and that. And if they could run those videos now, I'll share with you and narrate it for you and tell you about them and what we got going. So this is a little 12 volt battery and a little $39 bilge pump. And that is a Glenn Tourie named after yours truly. And what this does is when you have a power failure, you'll be able to take this and put it in the water and aerate it. So I have a little aquarium set on my backyard just for show and tell time. So here we are. We have this thing set up. And you can see there that when you turn on the little 12 volt pump, it pumps out in the water and it pulls the air in the top there. And that will just be sucking air. It sounds just going down, sucks the air down, blows it out. Not only does it aerate the water and wrap there next to it, but it's stirring up the whole tank. And it's just really, it's so simple. Any little battery will do the job.  Very low energy. This is a little siphon we do. I used a plastic pitcher just so I could ask you if it was pitcher perfect. But this is a water valve there on the bottom. And check this out. I'm going to fill this pitcher up with water. And when it hits the top of that stand pipe, the water is going to go down. When it goes down, it'll vortex. You see the little V of the vortex going down?  Look at all that air down at the bottom. Now what happens now if I take and put a glass or any air type thing. It could be a Coke bottle or a glass jar or anything. When I place it over the top of the stand pipe. Now watch this.  So I drop the glass to see the water go down. And then it breaks. Well now that pitcher will fill up and go down forever. And it will stop and start itself. And it has no moving parts. But we teach it how to do this with simple off the shelf materials. No particular machining or anything with it. You can do it with your basic hand tools. So I think you'll find that rather clever and rather interesting. Now we don't use a little plastic pitcher in our aquaponics system. We're actually in 55 gallon drums.  But the principle is the same. It'll go up and down. If you do that, then you can aerate your stones in your biofilter bed. With the water goes up and pushes all the air out. And when it runs down, it sucks all new air in. So simple. This is a little compost tea maker.  A lot of them. But this is a simple device. The air goes in right there where I'm pointing to the hose. And then it goes up. So when the air goes up, it also pumps the water up. Then I take this sack of compost or tea maker. You stick it in there. And then that water is going to turn rich, rich round. Because you're pumping air and water through the sack. See how quickly that went brown? Now that jar will fill up so high, about two thirds full. And then it will back flush and go down into the aquarium. And what you do is you let this do it for about 24 hours.  And that tea water. Now I don't drink it. I do shampoo my hair every now and then. But keep it fluffy. But this is for the plants. And so depending on the quality of your compost that you have. Is how nutritious it's going to be. But you ready for this? I've been on all amount of gardens for 21 years. I have never bought fertilizer. You see the tea there? Now she'll fill up so high. And she's going to burp backwards. And this thing is going to empty down. And it's going to be quite colorful. And the whole tank, the 55 gallon down below. Is going to turn that dark brown. We'll add a little molasses syrup to it. That's to feed the bacteria that we're raising. So it's like an incubation. Basically it's like making yogurt. Okay. But it's a liquid. There it is. Now there's your back flush. And then so this thing will back flush. And your whole tank will turn brown. And then in the morning, we'll water the place. And so we'll water the lawns, all of our plants. Food plants, even ornamentals, everything. We'll get the warm tea water. But we teach again. How to make this out of, you know, any plastic jug or jar. And bingo. Oh, how you like that camera work, huh? Anybody getting seasick there? I'm sorry about that. We just shot this this afternoon. After apologizing for that, I should have hit the off button on that one. But here, hopefully we don't, we get you too seasick there. But I have to work on my editing skills. This is a 30 gallon aquarium. And we built upside down aquariums. We take the aquarium, we turn it upside down. We set it in the fish tank. The fish now come up from the bottom. And they look out at me. Now, so he can see me coming. Instead of me coming up and all of a sudden startling him and him running, he's much more comfortable because he knows I can't get to him, right? But I'll stick my hand underneath there. By the way, this is one of our air lifts. And we'll have these down at the workshop and show people how to build them. And that is a good educational thing to do. And that is just 2 psi of air. And that's pumping in about 150, 200 gallons an hour. The air comes out the top. And the water comes out the white pipe there. And it goes into the 55 gallon aquarium. And it's pumping at that rate 24 hours a day. It has no moving parts and everything. Fish can go right through the pump. Doesn't hurt them. And then the water will leave on that 2 inch pipe nice and clear out of that radio filter and go into the garden. And so the garden is lush and does really well. See how the darts rich green leaves? There's nothing lacking. This is showing how we grow duckweed and azolla. And when we do that, we're able to feed this to our fish. So it's kind of cute. I go out with this net. And then twice a day, I will net up this green and then throw it into the fish pond. And then the fish will eat it up. It's kind of like turning a horse or a cow out on a pasture. So it does it. On this, these are more air lifts. These air lifts are lifting water 24 feet high. And you see how many bubbles are in there? OK? So that super aerates the water up to saturation. And it's a known fact that at a given temperature, how much oxygen. By the way, I kicked the camera over to slow motion. I just like shooting the slow motion stuff. Just a great excuse to do it. But you see it's a pulsation kind of thing. And so this is an air lift I invented. I sent it for patents for it. But we're Natalie and I go overseas from Hong Kong to Korea to Philippines, American Samo, Fiji Tonga. American patents are no good over there. So we ended up giving our patents away to the world. We just made it public domain. And so everybody can do this. They're all PVC, no moving parts in them. Run on air, be solar powered. It's a way of the future. We've never had a client do air and go back to mechanical pumps. Once you learn to do an air lift, you're over the thing. But it's good fun to do them. You see there's two pumps there. And each pump is pumping 450 gallons an hour. So that pumps the water. We can pump water around the farm doing this. But if you want to learn how to do this, come to our workshops. We just had an open house Sunday two days ago. And it was rainy. But we had some science school teachers come. We had some ham radio operators come. And I tell you what, you have a rainy day. It weeds down the crowd size smaller. But I tell you, you get the true people out there. And so we have a lot of fun with it. So they were able to walk around. And we're able to go out there and take these things apart and show you them operating and that. So you catch a free day at all of Monica Gardens. It can be good fun. This is an aerator. We call it a bubble vacation. And what it does is the water's coming back from the sump pump in that two inch pipe. And then it dumps it into a four inch pipe. It goes underwater, makes a u-turn, comes back up. Now all those bubbles, they're all been absorbed into the water. That overflows there, comes down. I restrict it to two inches there and then into a three inch. And it does it all over again, goes to the bottom, kicks out the bubbles, and it stirs up the whole tank. And so this tank stays at about eight parts per million aeration on it. Again, there are no moving parts except for the water's moving. Somebody, I said no moving part. People say it looks like the water's moving. Yeah, but no moving parts. In other words, they're not a mechanical part going back and forth or spinning and that. So it's simple. They're doing this on shrimp farms a lot. Okay? So this is our farm at all amount of gardens. And you can see the quality of the water on it. The fish are happy. They're not running scared of you. I can literally reach and pet them. This is our newest thing. These are circular gardens. And that's a spray nozzle shooting off there. And you'll see there, those sides are the solid, but we'll drill them out like these blue tanks are here. Okay? Okay, okay. Well, we're going to take a little break here and we'll show you some more. And I'm going to show you my favorite tool of the week coming up here. So if you stand by, we'll be right back. I just walked by and I said, what's happening, guys? They told me they were making music. So I do. I'm Ethan Allen, host of a likable science on Think Tech Hawaii. Every Friday afternoon at 2 p.m., I hope you'll join me for a likable science. We'll dig into the science, dig into the meat of science, dig into the joy and delight of science. We'll discover why science is indeed fun, why science is interesting, why people should care about science. They care about the research that's being done out there. It's all great. It's all entertaining. It's all educational. So I hope to join me for a likable science. Hi, Glenn from Olimonic Gardens and my co-host, Natalie Cash, from the farm. She's our farm manager and she keeps my life organized. And she reminded me to this invitation to the Hawaii Aquaculture Summit that's coming up here on November 14th. It's a little $50. November 16th. November 16th? Yes. Okay, get the date straight there. Anyway, do you have the website where they can look up the information on that? Handing for it? It's at the college. At the college? Yep. Hilo College. Yeah. Yeah. Or anybody can email me at Glenn at olimonicgardens.com. It's great. And we'll forward back over the sign-up information. But we wanted to make sure you understood that this is the first of the planning sessions and for people that are going to be presenters in that, kind of show us what they got. You might say like head talk kind of a thing and they'll be going on. But it's called the Hawaii Aquaculture Summit invitation. And it's a Hawaii Strategic Development Corporation is sponsoring this thing. Right here. So it's really good stuff. Oh. Okay. And if you got a pencil handy, Carl, K-A-R-L dot F-O-O-K-S at Hawaii dot gov. Or just go me, Glenn at Olimonic Gardens and we'll get you the information to you. And this is going to be the Worldwide Aquaculture Association. Society. Society. Coming over. This is WAAS, W-A-S. They are the big boys. They are, you know, thousands and thousands of members around the world. And normally I can't attend their conferences because they're in Israel or the South Africa or Germany or, you know, the plane ticket alone stops me from going. But here to have it in our own backyard and we'll be able to participate in it we're normally presenters at these things mostly because of the airlifts more than anything. And that, but good fun. Hey, but I promised you the tool of the week and I want to jump to that one just for a moment. When we're doing the aquaponics thing you add a lot of water on the ground when we're working and having courted tools is just not a practical thing. Natalie's always worried about being shocked. We try to use GFI receptacle. But having courts and we're dealing with kids elementary school kids and high school kids electricity and water is kind of a questionable thing. So we did the airlift so we don't have electricity in our system. So I'm certainly not going to use the electrical tool. But this is my tool of the week here. This is a little machine. It cuts the PVC pipe for me. Nice and clean. No little bits of plastic. No cranking because I could crank it but Natalie couldn't do it. It would get right to the point she couldn't quite get it all the way through. It was a bit of a chore on the hand. But these, anybody can do it. They cut nice and clean. And so we really love this little tool. What is it called now? This is called a shear because it shears the pipe right in too. You see how it comes down like this? And shears it off. And this one does everything from half inch up to two inch pipe. PVC. Naturally PVC pipe. Yeah, it doesn't work on metal pipe. Only on PVC. But it's just such a classic tool and it's one of those things we use every day. Every day. And so when we travel and we go to the workshop a lot of times we'll gift one of these to whoever hosts the workshop because quite frankly it's hard to get it home. They want it. Anyway, we wanted to share that with you. We try to each week show you some special tool that we use in aquaponics and to assemble their things. But something else that Natalie wanted to share with you today. Natalie, what is this about here? Yes, I just wanted people to know that at Allamana Gardens this is our logo that we came up with. And it's mad hot steam. And so we had some school kids on the ground. These are our t-shirts. And the little second grader from Punahoe comes up to me and she says Mr. what are you mad about? Because she saw my mad t-shirt. She thought I was mad. But the mad, what's it mean? Make a difference. We're going to make a difference in people's lives. And that's a phrase that's getting very popular. They'll have Make a Difference in Hawaii Day. They'll go out and you'll make a difference. You'll clean up a beach or clean up a taro patch or make a difference in your community. And that's what we want to do when people come out to our farm or we go to a workshop we want it to be worth their day and we want to make a difference. How about the hot? Hands on training. Right. We do very little PowerPoint presentations, right? It's better to grab a tool and learn to cut the pipe and learn to put it together sewing a rubber mallet in them. How about the steam? Yeah, steam. So it's a special part of our teaching and training. Science, technology, engineering, agriculture and math. And by adding the A it brings the other four to life. Because otherwise, studying engineering can be dry. You know, some of the sciences can be dry. The math, well, not many people really love math class, right? No. But when you do the aquaculture and the aquaponics in there or any agriculture, it gives purpose to the other four. It sure does. So Natalie and I were in the Philippines about three years ago and Consuelo Foundation here in Hawaii sent us down there with a team from University of Hawaii. Dr. Ben-Iran was in charge of the group. And they sent us down there and we were on a 19-day trip. And on the 17th day, I was so proud the Manila newspaper came out with three-inch headlines. And it says, Memorandum of Understanding between the military, the department of education, social, education and agriculture. Five departments wrote a memorandum of understanding and they funded over 5,000 schools in the Philippines to embrace the steam program. So they wrote a simple rule that anywhere in the law that it said STEMS, S-T-E-M, it would now read with an A in it. Now we did that in 17 days in the Philippines, changed the national policy and they embraced it, okay? We brought it back to Hawaii. You know, welcome back to your hometown, right? Here it took us two years to get the A in. And the A has double meaning here in Hawaii. It's agriculture and arts. And that's because so many of our high schools were doing the STEM program, but that dropped out the music, the band, all the arts classes, theater, all of that fell by the wayside, okay? Which is kind of odd because you go through four years of high school, then you go to college. And what's the first thing you do the first two years in college? Liberal arts, okay? And all the humanities and that. So here we are graduating high school students without the humanities, without the art. So when we partnered up with the school teachers, we did a similar law here in Hawaii. Wherever the law system, now it reads STEAM. And it's a double A, but that looks kind of corny to have a double A. So the A means what it means to in the context, okay? But it really brought back educationally wise, all over the world, they're trying to do a cross-training. So let's say if Natalie was a biology teacher and I was a math teacher, they're telling us we need to find a project to work on together. And it turned out aquaponics is the darling of the educational world. I mean, yeah, you're growing some food, yeah, you're growing some fish, but it's all the engineering that goes into it, the math, how many fish can you put and how many gallons of water, what is the rate of oxygenation, all the percentages, the ratios. So all of a sudden you have the math, the biology, the chemistry people, even the economics people coming up because if you do an aquaponics or aquaculture, the purpose is to feed yourself and or be a business. And that brings in the math big time. And the best was safe for last class. What's that? Our logo here, you see it's blue, aquaponics, where you have the plants growing, aquaponics. Now this was done at the Toloi Foundation. Yeah, Father Rocky's place for his compound called Toloi Foundation.  Living at the orphanage, he painted that image 14 feet long on a wall. And we went there and we took a picture of it and we came home, we wrote them and we're helping to fund that young man's education for us through high school and that for as a permission that is our company logo. But it's really neat. Half water, half plants, aquaponics. And in eighth grade, and he's doing that already, he's a National Graphic Scientist. And he has it all over the aquaponics. There is not a place that you walk around where you don't see these beautiful pictures all over his aquaponics. Because an acre of concrete tanks and runways and concrete fish tank, he has painted everything. And when I left after my first trip when I went back, I was really surprised there was one tank that was four feet wide and three feet high and about 50 feet long. And I left two pipes sticking out about two inches long. And I came back and I walk around the corner and I look over and I see this thing and he has painted a diver's face holding a binoculars with the hands on it and it's three-dimensional. And I just couldn't focus on it for a few minutes. That was really cool. But he did a lot of that kind of work. So we really enjoy it. And that Toloi Foundation went from 240 living students now that they're doing that. Four acres of aquaponics in there and they're fish-raising. They're now up to 860 kids living in residence. And each child from kindergarten all the way through high school. In fact, they have a two-year vocational college on the campus. One hour a day on the farm. For that, they get three meals a day and they learn something. Really interesting is any of the students, anybody, any of the nuns on the place everybody can tell you how aquaponics works. They take it seriously there. So anyway, look up that for the Hawaii Summit coming up here in November 16th. I think you'll really enjoy it. And then we'll have workshops here in Kona at the University of Nations. Thank you for joining us. Thank you for this. Think Tech Hawaii, and we really appreciate you watching.


This is a video of more examples of combining like terms sometimes combining like terms can be a little bit tricky So I'm just going to do a few more examples in this case this Algebraic expression that I have 4x squared y to the third minus 3y squared plus 4x squared minus 2x squared y cubed You'd also say cubed instead of to the third like I said earlier Okay, in this case. I want to identify those terms that have the same variables to the same power That's that's how I that's how I explain how to combine like terms if they have the same variable and the same power Then you need to add together the coefficients. So let's go through this Okay, so I have this term is an x squared y to the third notice. I'm not even looking at the four I'm just looking at the variables x squared y to the third x squared y cubed you could also say So I want to see if there are any other terms that have just those variables With just those powers. So as I look my next one y squared doesn't even come close Okay, I need x's and y's. So if I look to the next one x squared No, I need x's and y's. I look to the fourth one here x squared y cubed x squared y cubed Is the exact same so these two are like terms those two are like terms They have the same variables to the same powers now. I need to add or subtract the coefficients four minus two is two Notice that the coefficient changes But the exponents and the variables they do not change x squared y to the third x squared y to the third x squared y to the third the Variables and the exponents did not change. It was only the coefficients Alright, and then looking at these ones again. Don't be confused if these have yes These have the same exponent, but the variables are different. So these two terms here in the middle are not alike They're not the same. I cannot combine those so what I'm going to do is I'm going to just leave this as negative three Y squared plus four x squared Okay, so that is my simplified answer. That's right there as good as it gets Now I mentioned something in a different video about putting these in order You don't have to put them in order. You can put them in order Alphabetical order from left to right so x should probably go first and then the y's after that But honestly, it doesn't matter what order you put them in for now I'm going to say that this is this is okay. This is good The main concept that we want to get here is identifying like terms your two like terms They have the same exponent excuse me same variables To the same powers same variable same power. We want to add or subtract the coefficients Okay, so that's one example of combining like terms Something else another example of combining like terms This one I'm going to write down actually is a distributive property example Which has a variable in it and I'm using different variables here instead of those x's and y's that we commonly refer to J times the quantity 6k squared plus 7k plus 9 jk squared minus 7 jk All right, so this one again a little bit different example a little bit more difficult what we have to do first is we have to Distribute the j first so I have to take this j here and Multiply at times the two terms inside the quantity inside the parentheses sometimes parentheses are called quantities So you'll hear me say that a few times. All right, so now when I multiply time with a variable A couple of things will change not much though. So in this example j This is I'm only multiplying with j only the variables are going to change So the numbers gonna stay six and then when we write these j's and k's together We always try to write them alphabetical order j comes before case. This is gonna be six jk squared That's the first district distribution the second just distribution. It's gonna be seven Jk So again the numbers don't change. It's just the variable parts of them change. Alright, so now I'm gonna write the rest plus nine Jk squared minus seven Jk so now I want to identify anything that is a like so notice here that I have it. Here's a jk squared There is also a jk squared and then I also have jk term and Then over here. I have another jk term So now I've identified those terms that are alike. So now I need to add or subtract the coefficients So let's start with the jk squared six plus nine is 15 jk squared only the coefficients change not the variables or the exponents All right, so that's the first one the second one here seven minus seven is zero jk Okay, now if you get a zero jk that actually just goes away So my final answer is going to be 15 Jk squared that is my final answer Yeah, now a lot of times students you'll recognize students will recognize that the seven Minus seven is zero and so that term is just going to go away Jk it doesn't matter what those numbers are if they multiply times zero you're going to get zero So you're basically adding nothing. All right, so sometimes a lot of our students won't show this step, but that's okay So my final answer there is 15 jk squared again We want to remember when you add like terms you have to have the same variables To the same power if you can identify that then you just simply need to add or subtract the coefficients


We are here for this presentation, choosing the right agile methodology for your Drupal project. My name is Prabhat Sinha. And I'm here along with my colleague, Shani Mampi. So next slide is a simple introduction about us. I'll introduce Prabhat. Prabhat has been working in projects and projects for the past eight years. In his free time, he can be found jogging. And just socializing at the Lake Park. He lives in India in New Delhi with his wife and two kids. Yeah. And Shani has been managing product and project delivery since 1999, long while ago. And after work, you can find her on court, suiting hoops with a local Nepal league. Shani lives in a suburban city in Israel with her husband and four children. And it is a good thing that Shani has practiced a scrumman. She has been practicing since last three, four years. So she'll be able to give a more focus on all methodologies. So here is the simple agenda of this presentation. We will run you through what is agile, a simple intro, because we know all of you know about agile. Then we will run through agile frameworks, a scrumman. I think these three are widely used agile frameworks. And then we will also discuss about extreme programming, lean, and feature-driven development. And we'll see how we can also use this for triple projects. After that, we will do a simple comparison of all the frameworks, which we have included here. And last one would be the Cinefin framework, a popular decision-making framework. So first, what is agile? So as you all know, that agile brings more flexibility. It gives vetis to individuals and interactions over processes and tools, working software over comprehensive documentation, customer collaboration over contract negotiation, and receptive to change, responding to change as soon as possible. So here are the 12 principles of agile manifesto. And it is more about flexibility, team collaboration, sustainability. MVP is in the focus, like minimum viable product instead of documentation only. Simplicity, so this is all about it. And but as agile as a methodology only, you can't work with agile, because it doesn't give. So there are several agile project management frameworks which are being used in a triple ecosystem. Scrum, Kanban, Scrumvan, or as I said, are popularly used frameworks. Then we have extreme programming, lean development, and feature-driven development. So in the next few slides, we will discuss about all these frameworks. So it is over to Sani for Scrum. Thank you. Thank you for that. Hi, guys. So OK, we're not going to go into the details of what Scrum is. We're just going to take it from a high level beyond assuming that everybody knows. So the one thing I do like is that Scrum, the word Scrum, comes from rugby. And most of us know this. And this definition of it I found in the Oxford English dictionary. And it's just something that I really like about it. An ordered formation of players, I think, really represents the cross-functioning team and if the Scrum is used to restart play, correlates to the sprints that we have at each point, in which the forwards of a team form up with arms interlocked. And I see this as very much the Scrum team, the PO and the Scrum master, linking arms, going together and going forward, heads down, representing the no distractions that we have in Scrum, the objective to be that the team has no distractions, and to push forward. Scrum doesn't work unless the whole team is, well, it's gone. I don't know how to make it go back. It doesn't work Scrum if the whole team isn't on board and focused on going forward in the same direction. The part about an opposite side doesn't really take effect, but that's the definition of Scrum. Scrum in a nutshell. We have many processes and tools that we use to work through not just the sprint but all the preparation for the sprints. We have the sprint planning, the backlog refining, the demo, the retrospects to learn and to constantly maintain going forward. We have the product backlog, Scrum boards, different tools that can or cannot be used, it's optional, during the sprints. The team, product owner, essential part of the team. Without it, I do see Scrum as being a bit of a problem without a product owner. A Scrum master, as we know it's fairly debatable whether a Scrum master is actually required during a Scrum but the objective is to make that person irrelevant almost but a Scrum master especially to start off with and the team. Well trained, specialized, self-managing, communicative, ability to make decisions, common goal and self-improving. All the things that the team needs to have, again, putting together that common goal and achieving it. The requirements for a Scrum to have a clear vision. There is an ability to have adaptability during that clear vision but once the Scrum starts, sorry, once the sprint starts to stay on that goal, no distractions to the team during that time and to stay focused. It would help if you have a backlog for at least two sprints. That way, there's a constant life cycle and always moving forward. The objective being to have an MVP, sorry, a PSP or MMF for the end of each sprint something to show this is what the team did. I'm aware this is difficult at some points, especially at the beginning but always to work to that goal of having something to demo at the end of the sprint. When to choose Scrum, where the vision's clear, without, and I say this loosely, the vision has to be clear of where we're going, a long scale, like what is the objective in three, four months' time to get there. Flexibility along the way. Agile is designed to adapt for that flexibility. That is available in Scrum. Teams can be changes but once the team is in motion during the scrumps, during the sprint, leave them. We can make changes as we go along but not during the sprint. Just keep on going and the changes can come afterwards. Again, Scrum projects can change direction as long as the product backlog is maintained and groomed. So constant change, constant going forward. Those are the main things I see in a Scrum project. The team needs to be onboarded and committed. Stakeholders have to have the projects as a priority. It doesn't have to be their top priority but it does have to be in their schedule that they are able to answer questions, be available to think about the project and if there is a change to be done, to be available to give that change and give that feedback so that the team can continue to progress in the right direction even after a change. The team obviously has to have the skill set to manage the project. So it's an essential and communicative. I will add in here, we work in Accelerant and we are a remote team. I'm based in Israel. Prabhat is based in India. We have people in Tokyo. We have people in the UAE. We have people in the States and a few other places. So, what? Australia. Australia, Australia. So, communication is essential and doable. I'm not going to go into the tools. There are enough tools that the team can maintain. Communication, there's no reason that should stop for whatever reason, co-located or not co-located. Communication is a key and we have proved that it doesn't matter where you are, it can be done. The output is to show something at the end of every sprint, have something to take back to the client and say, the stakeholders, this is what we did. You don't like it, that's fine but this is what we did. The team gets a full sprint, this is what I mentioned before, without any interruptions, no distractions. All distractions, project backlogs, things like that, part of the schedule, but when it comes to the actual sprint work, no bugs to be fixed that aren't in the plan, no changes, it's a short period of time, we'll work it out afterwards. Anything can be subject to change and that's where Scrum really lives up to his name. Want to take Kanban? I think, oh, next one. Oh yeah, sorry, my mistake. Okay, when does Scrum turn into Kanban or Scranban? The sprint scope frequently changes, priorities change, emergency situations, clients not responsive, many different reasons. It's a sign that maybe Scrum isn't the right way to work. Maybe the team's okay with Scrum but the stakeholders might not be. They are a contributing factor when choosing the right framework for which agile framework and that is one of the things that is easily identifiable at the end of a sprint especially that maybe Scrum isn't working. The scope isn't clear or blocked. Again, the whole point is to be able to have a couple of weeks sprint backlog in the backlog and without that, it means there's no scope and we have no backlog, there's no scope. So we need to know as a Scrum master, you need to know what you're gonna be doing next. So one or two steps ahead of yourself. If you don't have that visibility, then Scrum might not be the right way to go. Basic Scrum rules aren't enforced, lack of communication, lack of retrospects, live and learn, learn what your mistakes are, improve each time. The team should become on together. I think a major part of Scrum is the ceremonies. And team is not dedicated actually. They're multitasking and you want them to focus on particular tasks or items. Yeah, that would happen, especially if things are blocked or the scope isn't clear, they get distracted. Nobody wants idle talents, sat around doing nothing because scope isn't ready and then they move on to another project, then their dedication, it fluctuates and then again, Scrum can fail. Release start to be, releases are ad hoc. You're just releasing whenever you feel like it, whenever you feel from a development perspective, it's relevant, that's not Scrum, okay? No clear distinctions between project and product. It's a conflict between the PO and the SM. There's a reason those two people are members of the team to have the different aspects, one coming from the business side, one on the project development. Doesn't mean the Scrum master can't also be a PO but not in the same project. Addressing maintenance and support work. Given that maintenance and support has different and changeable priorities, Scrum also won't work because it will affect the content of the sprint each time. Team dedication is erratic. When you set what you're doing for the sprint, it is what you need to accomplish, it's what the client is expecting at the end of the sprint. Without that, with the team not dedicated to achieving those things and that means they can work on other projects, they can work percentage wise but they have to have the dedication to the project in order for it to go forward. Thank you, Sunny. So I would introduce a word, Kanban. A bit Kanban, as the name suggests, it is a visual signal and basically it is a Japanese word which says that like card you can see. And Kanban was first introduced by Toyota for the just-in-time production lines in the 1950s. So the most important part of Kanban is this board. I think this is pretty simple to work upon and we can simply manage our tasks here. Like we can put our stories here in this column. We can also put some items in to-dos in progress. Important part is that we can limit work in progress items. Like in progress, we can limit like there may be three, four items. First we will finish those or move it to the next column and then we'll pick another stories from the product backlog. So that really helps even we are practicing it for our support project and accelerant and we are pretty happy with this process. So I'll move to the next slide. So Kanban in a nutshell, like citizens are same as a scrum, you can say like meetings on a daily basis. And basically for those who are converting from a scrum, they go for it, product backlog, the debt. So stories are here. You can pull from here. So you can see like which stories are available there and you can pull out from there. So that would be your product backlog tools. Kanban board, it is being used extensively as a tool and WIP limit as I talked about it during introduction. So limiting the amount of WIP really works in a prettiest manner. Like we can limit the things and we can ensure that things are first finished and then we are picking other items. And team basically, they are technical teams and as needed Kanban is also extensively used for support projects in Drupal ecosystem. So basically front end or back end developers who are required for that particular project are picked for it. And the project philosophy actually Kanban does not prohibit chins, but neither it prescribed for it. So it is not speaking about chins a lot, but yeah, it is receptive to it.  Kanban encourages making incremental changes. Like you can make changes as and when required so that you can avoid drastic decrease in productivity. Similarly, small course corrections are also just easier than altering the complete process. And it focuses on the end-to-end project like vision is on the end project like how soon we can complete the project. So now when to choose Kanban. So basically Kanban as I said is used for support and maintenance project widely. Like whenever you are running support you can keep tickets and your backlog items. You can pull tickets from there. You can pull them into work in progress. You can then move it to the testing and so on. Or then continuous flow. Whenever we need a continuous flow of work items, we can pick Kanban as our product methodology. And when the project requires the maximum flexibility and frequent chains of priorities and scope, then again we can pick Kanban. Openness and like things are open. Everyone can see that board and which team member is working on which item. You can definitely look into that. Ad hoc release required. When release dates are not known actually. Basically for support projects you never know. Maybe one ticket takes two days for you. One ticket takes simply a few hours for you. So best upon that. Now it is time for a scramban. So it is a mix of scramban and Kanban. Okay, so scramban actually is one of my personal favorites because it takes a lot of the things that I like personally in scramb. And things that you have in Kanban and it equals scramban. This isn't officially defined anywhere. It's still unclear. But in my opinion, you're working in scramb. You need to adapt it scramban. You like certain parts of scramb. And you just want to have ad hoc releases or anything like that. Then this is your solution. So it's still in definition. It's in the definition stages. But it's gonna be anything you choose that isn't 100% Kanban and isn't 100% scramb. Okay, and this is actually not unique to software development. There is a lot of things about using scramban in the home with your children and things like that that actually has a lot of interesting ways of doing it. So scramban in a nutshell. Again, I really personally, well, I think it's very important, the communication. So a lot of times you'll keep things up like the stand-ups, daily communication, speaking to your team, knowing what they're working on. Technically, that makes it a scramban and not just Kanban. The retro to enforce self-improvement, team improvement and reviews. Again, we can do ad hoc reviews and that's cool. But you can also plan the reviews. I personally am working in a project that was pure scramb for about the first five sprints. And the last seven sprints, we moved over to scramban. We used a Kanban board to see where things are at. But we kept our demos with the client. But due to issues of response from the client to close all the UAT items before the end of the sprint, the client wasn't responsive. Getting clear information on that for the backlog, the client wasn't responsive. Blaming the client is their priorities. But this meant that we could no longer keep scramb.  So we were failing in scramb, but the team wasn't failing in progressing forward. And so we just moved it to scramban, adapting. That's the main thing with agile is just to keep in the name of adaptation, learning, and keep moving forward. So with the tools, I do use a Kanban board. In a few cases, I don't do ad hoc releases. We keep it structured in the same way that scramb is. But you can choose to do the Kanban way and ad have ad hoc releases. Continuous flow. Even though we do define when the sprint ends, because we have a demo in the code we have, we do say it's sprint 11, it's sprint 12, we do have that just for structure. But technically, we do work on a continuous flow. Sometimes we take less priority tickets due to high priority items not being blocked for whatever reasons. Again, unlike scramb, the team pulls the ticket. So that means although we didn't define it at the beginning of the sprint, they just pull the tickets when they need them. So again, contradicting to scramb where it's predefined at the beginning of the sprint, what are they going to work on? No, no. We do grooming ad hoc when the requirements come in, in the case I have in mind. There's no reason not to do planning. If you have the information and you can do a plan, even if you say, these are the next priority tickets, I would love to do planning in this project. You see, the problem with the way we don't define, we don't mark the end of the sprint by, yes, we have a demo, but the end of the sprint is on a start of a sprint is on a Monday. So we just start the week. Yes, guys, it was a new sprint. So any merge requests need to have the code so we know when it was done, but we just have priority. We don't have, unfortunately, in this case, we don't have the ability to groom them and be ready and say, this is what we're going to accomplish in this day. We don't even have that visibility. We're living hand-to-mouth with regards to development. So this allows the flexibility to do that. But personally, I would love to do some planning meetings. So that's, but you can. Again, there's no reason why you can't and choose your different reasons to choose that part of scrum yes, this part of Kanban yes, that part of scrum no, et cetera, et cetera. That's why it's not defined. And I wonder if it'll ever be defined because it's just take what you know of both and see how it works for your team, for your projects and move forward. Grooming on demand. We do grooming on demand again. This is a perfect example when, only when we get things unblocked by the client can we do the grooming. So we're stuck until then. Again, the team shouldn't be idle, so they pull the tickets that they can work on. Again, like scrum, it needs to have a cross functional team. I do see this as a, I didn't actually put it in. Oh yeah, it's here. I see the top part as the scrum and this is the ban, so scrum ban in most cases. But again, adapt it to what you need it to do. The project philosophy, again, it's the same agile philosophy. The roles, the work processes, the better flows and the flexibility and all under the title constant improvement. So as long as we're constantly improving and we're agile, then we're still working in the agile methodology. When to choose scrum ban. So when anything is unstable and you can't maintain scrum, basically, and you find the solution to not being able to maintain the scrum within Kanban. We have scrum ban. The project is not flexible, hard on that. When the project requires the maximum flexibility and frequent changes of priority. So client says they want one thing, the next day they want something else. With scrum, we would close the door and say no, talk to me in two weeks or three weeks. With scrum ban, we can stop. With Kanban, we can stop. Therefore with scrum ban, we can stop. The goals are not clearly defined. Again, not allowing us to plan. Constantly evolving of the product, which is great. This can actually, involving of the product can be also done in scrum quite easily. But if it evolves too quickly, then it will move out of scrum. And the sprint planning isn't happening. Another reason scrum would fail would be management not involved. The whole team could be working with scrum. But like I said, with the client or the stakeholders having it as a priority, if the project is a priority, if they don't scrum will fail. And we won't be able to close off sprints cold heart. We've finished it. The client agrees with it. There's no issues. And with scrum, you can pour it over to the next so-called sprint. Any Kanban project that you're working on that needs a slight bit more structure will also fall into scrum ban because you'll be doing the opposite. You'll be working in Kanban, but you need the planning. You need the daily stand-up. You need the retrospect. So technically that would be a scrum ban. And the team isn't focused. Scrum will also fail. If the team's not focused to do what they want to do, what they need to do for that sprint, then scrum won't help. Extreme programming. Yeah. So extreme programming is really a lesser-used framework for Drupal ecosystem at least. But yeah, let's discuss about it. So this is another agile development framework and it is focused more on software quality and responsiveness. It is a code-fast approach. So code is in the forefront and we also do testing. Testing is also on the forefront of extreme programming. It has also used a few software engineering methodologies like test-driven development has been used extensively for extreme programming. And there are a few other elements like peer programming, integration, collective ownership, and several other things. We will discuss on the next few slides. So moving to the next. So as I said, extreme programming is a code-fast approach to software delivery and emphasizes on four basic activities like coding, testing, listening, and designing. So here in the diagram, you can see coding is the main part of this. We first code, then we go for other things. We also do peer programming. We do refactoring of codes. So sometimes this is also said that probably extreme programming is not that popular because of this code-fast thing here. And again, as I said, that extreme programming brought testing at the forefront of delivery process, like test-driven development and automated test-driven development, and practices like automated testing, refactoring, continuous integration, test-driven development has been used extensively in extreme programming. So here are advantages and disadvantages of extreme programming. So advantages are peer programming under XP, helps in writing better code because two programmers are writing on the same piece of code. So definitely your code is going to be very much effective and productive with less bugs into that. Again, increased team accountability. So every code base is given to the team. And team is responsible for managing the quality on that. Similarly, extreme programming manages risks in a better way because we are working on the code in a better way. We are maintaining quality on that. We are also using test-driven development. And apart from that, we are also doing continuous integration. So iterations here are mostly of one week and it is integrated into the main code base. And it is easy to accommodate changes. So another advantage of extreme programming like it is very much receptive to changes. At any point of time, changes are accepted and they are integrated into the main development process. Now let's discuss about the disadvantages. So detailed planning is required since the inception due to changing scope. As I said, that it is very much receptive to changes. So at any point of time, if changes are coming, then we have to estimate how much extra time it would take. So right from the scratch, we have to plan in a way so that we can accommodate changes. Or maybe we can also let client know right since they start that whenever you will come with the GINs request, we will let you know about the estimations and all. Then XP does not have a set measurement plan or quality assurance for coding. So apart from all this software engineering method laws is like continuous integration and all, there is not a set measurement plan. So that is why sometimes extreme programming fails. Pair programming may lead to too much duplication of code and data. And apart from it, it also takes efforts. Like two programmers are working on the same piece of work. So it means we are spending more time and doing a piece of the work. So XP is more code-centric than design, which may cause UI-UX issues. As I said, that code is in the forefront. So UI-UX issues are usually ignored and which may create a chaos later on. So XP in a nutshell here, process and tools, pair programming. It is an important fact of XP, basically. Release plan, iteration plan is one plan which is used there, where we plan about iteration, the sort iteration, usually it is of one week. And we plan like what features or what items we will pick into that iteration. Then project velocity, it is measured at the end of the iteration, like how much velocity we can achieve. Then iteration, as I said, usually it is of one week long. Practices, we use test-driven development, continuous integration, collective code ownership. Team size, usually five or less. And team members are trackers. Customer is very much important here in extreme programming and it is equivalent to product owner in a scrum. So customer is the one who assigns tasks to team members. It is not like a scrum that team members are picking tasks their own as per their convenience. Rather, customer is assigning tasks to all team members. Then few other team members are programmer, tester, and coach. And again, as we discussed, the project philosophy is code first, refactoring has done so many times. Simple designs are used, because focus is more on code and spike solutions. So now when to use XP? So basically when we have reached up to a maturity, most of the time what happens is we have done most part of the coding and we have to move into the complicated part of coding where a lot of focus and quality is required. Then we can move into XP at that point of time. Similarly, when we require maximum flexibility and frequent chance of priorities. Then again, we can use XP. Multiple releases per week or per day. As I said, that iterations are very short and continuous integration is promoted here in extreme programming, so like that. Whenever we want to have multiple releases, we can use it. Have many unscheduled releases. Same, like when we don't know about the releases, we are just working on the tasks and items. And once it is done, maybe we can integrate it with the code. And when we have less cross-functional teams. So now it is over to Sani for lean development. OK. So lean development was adopted in 2000. There's books on it as there are on everything. The lean also works based on a kind of Kanban board with different emphasis. The emphasis changes to different priorities. There is still the objective to have sustainability and smart development and obviously success. But the main difference is that it's more focused on... Hold on, I'm pretty just going to... The values are ROI specifically. Yeah, it's very good for startups because you build less so to what you can do, but what will provide you the fastest and the best ROI. It's mainly spoken about for startups, but it can be applied whenever, whenever the focus is to get the ROI on what you're working on, and less priority on a whole product in the end. So it's a small increments of success, I think it would be a more fitting way to say it. Still works on the cross-functioning team. It doesn't have any best practices, technical practices defined for it. It's matrix, it's external matrices that what will give us the money back on what we're working on, not what can we resolve, what can we do, it's more from a business side. The business wants to see money coming back for the development that's done, and priorities will be according to that. In a nutshell, again, you can apply daily standard meetings, communication is just always essential in agile and reviews because so that we can learn and improve. The tools, the cumulative flow, excuse me, cumulative flow, diagrams, visual controls, and the Kanban board. The Kanban board, if we go back, it has different, you have the problem, you have the solution, you can have in the solution how much it's going to cost to do that solution. Obviously that is needed in order to measure the ROI, the key metrics, and the cost structure. So it's a different, the board looks the same, but the titles are different. Yeah, it is more business oriented. A lot more business oriented, coming from above. Iterations, again, can be according to what you're planning. There's no set rule, there's no three weeks, two weeks. As need be, it's also not ad hoc, as you want. The team needs to be well trained, specialized, again, all the things that agile has seems to be constant, well trained, self managing, and communicative. The key principles are that it eliminates waste, it creates knowledge, it defers commitments, fast delivery, and respects people. Respect people. And optimization as a whole. So that's basically leaning in a nutshell and over to Pradhat. So last one in the row, feature driven development. And it is basically a software development process which has feature in the forefront, like we do everything based upon feature. And feature driven development was introduced in the year 1999 in a book named Java Modeling in Color with UML. So as the name suggests, feature are an important aspect of feature driven development. And they are primary source, like similar to user stories in a scrum. We use feature to track things even in the product backlog or whatever backlog we make there. We use feature there. And feature is a small client valued function expressed in the form. This form is important like action, result, and object. So this is a simple diagram of feature driven development, how it works. Like initially, we develop an overall model, architecture-based framework. It shows here, and we build a feature list here, all list of features so that we can track on the basis of that. Here, once feature list is done, we plan by the feature, like which features we will include and which release cycle. And once planning is done, we go for design by feature, like we design, first design the feature architecture part of it and then build by feature. So I'll move quickly to the next slide. Advantages and disadvantages of feature driven development. So biggest advantage of feature driven development that it supports multiple teams working parallel because we can assign different teams on different features. They can work parallelly on their stuffs and later on it can be integrated into one part. All aspects of project tracked by feature. So as I said that you instead of user stories and scrum here in FDD, we use feature to track everything. So design by feature and build by feature aspects are easy to understand and adopt. So it is visibly convenient for all the team members. They can easily understand what they have to do and they can work accordingly. Similarly, it scales to large teams. So usually feature driven development supports large number of team. 50 is the normal size of a feature driven development project. You can go up to any number in that. So that is flexibility given by FDD. So disadvantages promotes individual code ownership as opposed to shared ownership. So it would happen because several teams are working parallelly on several stuffs. Then ownership would remain with one individual or maybe a few individuals. So that kind of shared ownership is not available here which actually as I does not promote and iterations are not as well defined by the process. So because we are working on features and we don't know exact time to complete those most of the times. So iterations are not fixed here like in other agile methodologies like in a scrum or can when or wherever. We have defined iterations but here we can't do that. Similarly the model centric aspect can have huge impacts when working on existing systems that have no models. So like if we are migrating from any other existing agile methodology to feature development then probably that may be problematic for us. So here FDD in a nutshell. So processes and tools are like as we discussed on the last slide we develop an overall model architecture and build a feature list plan by feature design by feature build by feature and practices are domain object modeling. High-level class diagram we make here so that things can be put there and we can track on the basis of that. Developing by feature, individual class ownership reporting visibility of reports. Team is wide spread here and there's no set team in feature development. Project managers, chief architect, development manager, chief programmer, domain experts, all kind of roles are there. There are several supporting roles too and project philosophers are like multiple teams working on the same project, tracking through features and model centric approach. So comparison table, Sany, maybe you can speak about it. Yeah. Okay, so in a nutshell, yeah. Okay, so just to summarize everything up over the different elements, there's a lot of similarities between Kanban and Scrumban and the Scrum seems to offer more structure and more refined rules. So when in the comparison, you can see the artifacts, you have many artifacts for Scrum, less so on the Kanban and Scrumban style, excuse me, frameworks. So that again, when you're making a decision what to choose, it's important to know what artifacts you're going to have because if you do have them all, then yes, you can take Scrum and if you don't, then you need to find what fits to you, whether it be the Kanban or the Scrumban. The board at the beginning of a sprint, your board or the end of a sprint, your board should be empty and you're starting anew with the sprints on Scrum but with Kanban and this was for me one of the major reasons why we moved to Scrumban. The board is in continuous use. So what you thought you would take on at the beginning of the sprint but you didn't until three sprints later, that's fine. That works for Scrumban and Kanban. With sprint, everything should be completed and clean slate and moving on. Ceremonies, again with Kanban and Scrumban, do what's good for you, do what you need but Scrum requires that you do the ceremonies in order to make the next sprint work. Teams and roles, most say you should have some kind of Scrummaster agile coach, something like that to lead the team through, not someone who's not technical or not necessarily technical. In Scrum, very clearly defined roles, product owner, without it things can get complicated. Scrummaster, although the objective is not to have one because everyone's self managing, at least for the start someone to give the structure to the sprint. For Kanban and Scrumban, this is optional. I do, it is recommended to have some agile coach, otherwise you just kind of have a board on a wall and a few people talking around it. So someone to give it some kind of structure. Iterations, sprints as we know and Kanban and Scrumban, again Kanban as you wish and Scrumban, like we do or I've chosen to do, is to have to maintain those iterations but with a lot of flexibility. Task assignment, Scrum, predefined, everyone gets what they need to do at the beginning of the sprint and with Kanban and Scrumban it's pulled and with Scrumban you can push and pull. Prioritization is part of the backlog grooming session, ceremony with the PO. With Kanban it's as you want and the backlog just needs priority. So as long as you know what's the main thing you want to work on, you're all right. But again, this has the challenge of always having the high priority items, groom, defined, estimated, whatever it needs to be in order for the developer to take it up and start working on it. There's many performance metrics that you can be used in Scrum, the burn down charge, velocity. I have actually kept velocity, like measurements, the capacity of the team. I think that helps when defining in Kanban and in Scrumban. Scrumban, it helps to know how much work in progress tickets they should have, what their limits should be and I luckily had that information from when working with Scrum and maintained it going over to Kanban and to Scrumban. So, and then Prabhat will do this one. Oh, really? Okay, so again, extreme programming. You have a release plan, an iteration plan. There's artifacts that features high-level diagrams for FTD and lean is again also like Kanban, more cumulative flow diagram, virtual Kanban board, not virtual Kanban board. Extreme programming like Scrum has a clean slate at the start of the sprint. FTD has a feature board and lean has the Kanban board. Ceremonies, as you wish, you know, there's no extreme programming has them in place but I think it's got the flexibility to do it as what fits to your team. I think that's going to be when choosing the right framework, it's what fits to your team and to your project objective that always has to be the forefront of your mind. Iterations are incremental. Iterations for FTD are feature-driven, hence the name. And for lean, it's a constant stream as business defines, really. Extreme programming, unlike any others, the task is assigned by the client or the customer and for the others, it's a pull. Majority of our job is actually a pull from the team member themselves to choose what they want to work on next. Obviously, having whatever the basis of the prioritization is, that is a clear indicator on the ticket, on the card, whatever, so they know not to take what's relevant, not just what they want. Prioritization is done by the client for extreme programming, hence them allocating the tickets makes the most logical sense. And for FTD, it's done by the project manager or architect, according to the feature that there's been worked on. And lean development is, again, by the business, what will provide the ROI? And very similar matrix, the burn down charts, the lean and cycle time and cumulative flow for both FTD and lean development. So these are the methodologies. Well, under agile methodology, these are the different frameworks. You know, the advantages and disadvantages. The question is, what is the right methodology for you? Papai is going to talk about Cinefen to help us go through a flow of how we can make that decision. Okay, yeah. So Cinefen is a very popular decision-making framework. It has been used by George Bush's administration, too, for analyzing policy and the impact of release and in process. So it describes problem, situation, and system with the help of research. And further, it explores relationship between context experience and the person to propose new approach to communication decision-making. So basically, it has been at operate recently for agile decision-making and picking right methodology as far as agile is concerned. There are five domains, obvious, complicated, complex, chaotic, and disorder. We will discuss about four of it one by one. So here is the picture, like in this picture, we can see about all the four domains which are in use, obvious, complicated, complex, and chaotic. Now here, obvious is where we can sense, categorize, and respond. So identifying problem. We can easily identify what is the problem, and we can also quickly pick what is the solution for that problem. So it may be simple support tickets where we know how we can fix it. So again, no analysis is required there because we know the best practices and we need to follow standard operating procedures. So here, we can use any framework, anything, whatever we are continuously using, we can go ahead with that. I don't think we need to make any further change into our processes there. Next comes to complicated, where we have to sense, analyze, and respond. So here, a problem we are able to understand about solution we have to sense, we have to think about it, and then we have to do analysis and respond. So in such cases, cause and effect are separated over time and space. It happens like sometimes, any solution work for us, but later on, when we try to repeat it, it didn't work for us. So maybe, in such cases, we have to do the analysis. We have to think about the present situation and how we can do in a better way. So here, we can use Kanban. Kanban is a good framework for this purpose where we can keep our tasks in the backlog items and we can pull from there and we can work upon that. Next one would be complex. Here, we have to probe, sense, and respond. So we have to think about the solutions. We have to think about the other situations. And we have to sense on the basis of that, like what would be the right solution. For example, in Scrum projects, we make decisions like this should be our back end part, this should be our front end part and how we can collaborate things together to provide a right solution. So again, cause and effect seen in retrospect and do not repeat. It is visible, but it doesn't repeat. It changes over the time. And we have to use emergent practices for it. So next, I will move to Kios. So here, we are not able to understand what would be the right solution. Act, sense, respond is the key there. Like we have to act, keep on acting. We have to keep on trying for the solution and respond on the basis of that. So extreme programming is one of the framework which we discussed about. We can use here for Kios domain of Senefin because we can keep on trying with the best practices where we can manage a better code quality and test ribbon development and think about the solution. So noble practices are discovered here. Every time we get a solution for it, that is noble and that is phenomenal for everyone. So this is the end of our presentation and if you have any question, then yeah. Okay, thank you. Thank you.


Okay, so this is the final screencast number five for assignment zero probably won't do so many for future assignments But hopefully these are helpful. So the last thing I want to look out We've talked about we set up an environment of both the kernel We've poked around in the source tree a little bit and we've used get and finally we're going to get to Gdb. So what is Gdb? Gdb is the canoe debugger And this is another extremely again. This is not something we invented the canoe debuggers I've been a companion to the canoe compiler for a long time.  Particularly when you start to develop and debug multi-threaded code and code as complex interactions with other things You're gonna want to to have Gdb as part of your arsenal Okay, so, you know again a Gdb tutorial is kind of beyond the scope of what I'm trying to do I will show you a little bit about how to get started and get Gdb Running in your OS 161 environment. So I'm back in my root directory here. I can boot up a kernel. So I'm in good shape there However debugging using Gdb requires Two windows because I need to run my kernel in one window and interact with it and then connect with Gdb in the second window and that's because you actually need to debug the kernel and connect through a socket to the To this is 161 simulator. So here's I'm going to do that I'm going to use my handy T-Mux companion if you don't know T-Mux. It's an awesome tool. It's definitely worth learning So what T-Mux essentially allows me to do is to create multiple terminal windows switch between them here's window one and Here's window two and I have a really nice easy way you'll see down here at the bottom of the screen I've got a little display that's kind of handy tells me what's going on So T-Mux is a fantastic tool as you sort of start with the joys of Programming at the terminal and using the terminal All right, so now I've got I'm in my root directory. I need to run this is 161 Sorry the OS 161 debugger in the same directory where I run like kernel If you have poked around with this one to see when you'll see that it has this nice command line option now Currently assist 161 is set up so that any time there's a panic it will wait for a debugger before exiting So let me show you how that works. Let's fire up a kernel and let's panic on purpose All right, so now what you'll see I ran the panic shell Kernel command that just generates a panic now. What's happened is it's waiting for this debugger to connect Let's go over here Run OS 161 GB kernel Unix I'll explain what this is doing in a sec So I'm going to connect to the Debugger and then I can do a back choice and see what's going on and it turns out that this was generated by the command panic Which is part of the menu. Okay So that's what kind of what will happen If you generate a panic if the kernel panics and this will actually happen in any point It'll wait for the bugger connection. And now what I can do is just exit and I'm sorry quit. I'll let it shut down. It won't shut down until the debugger connects However, a lot of times you want the kernel not to start until there's a debugger connected So if you run this one 61 with the dash w option, that's what will happen Now this is the little piece of black magic that you need to connect to These this 161 debugger and this isn't super Black magic just let me kind of show you what's going on when system 161 runs It creates a couple of sockets in a dot sockets directory in that In the directory in which this one is running one of them is gdb That's how gdb Communicates with this 161 in order to control the kernel that you're running for debugging purposes there's also something called meter in there which is used to generate stats and Actually, if you run the stat 161 command, yeah, that actually connects to the meter device and pulse statistics about the kernel So it's running. Let me let me show you how that works. Let's run this Out that and then so this is that 161 output. It shows a little bit about what's going on But anyway, that's not what this tutorial is about 161 is fun, but we're here to use the debugger. So let's do that so now I'm waiting for my debugger and And what I do is I go to my other window Here's the way to invoke the debugger. I give it the kernel binary so that it knows something about the symbols that it needs to use and then I invoke this magic incantation which I Sort of suggest what this is telling it is to connect to a remote target It's a unique socket and it's in the sockets gd directory. So there we go. Okay, this is normal output when it starts up Gd can't always interpret all of the code that this 161 is using and But what I've done you can see that this 161 has accepted into debugger connection now Nothing is going to happen right because that the system is stopped. So but this gives me an opportunity to do certain things like for example Let's set a break point on the panic menu command Okay, so what I've done is I knew I had a particular command that I wanted the system to break when it Reached and now I've set a break point there. I know I'll continue. Alright, I Don't know why this is happening because it drops some characters. All right, let's try it now Break and panic Continue All right, there we go. Yeah, this is clearly a bug in since 161 and I will tell David about it All right, so now I'm at the menu and I can pretty much do the normal things I would do right Let me run the the one of the synchronization tests. Okay, that works Debugger still waiting right because I haven't run panic, but now okay system stopped and now I'm in command panic And it's useful to you know use gdb to kind of figure out what's going on with your system So one of these whole commands is L that shows me a little bit of context about the command that I ran And if I hit return, it'll sort of keep going and show me more So this is from you can see an in main menu dot see Line 253. So this is the panic command and you can see all it does is run panic, right? So let's step through it We'll do next right and That told it to go to the next break point, but at this point actually it did panic and so it got a sick trap And here I can produce a back phrase This shows every stack frame. So how did I get to this panic to this moment? Well, I started this is the boot sequence. I executed K main K main rather than menu the menu tried to execute a command This is a just a command dispatcher. That's part of the menu code that command was panic Panic executed the panic command and then I ended up by generating this L 3 stop, right? So what's interesting is I can go up right There's up Up up and what this does is it walks up and down the stack, right? So you can see here Here is in command dispatch This is essentially how the menu code maps between the string that I entered panic and the command that actually gets run I go down You'll see that that ended up in command panic. Let's go up One can't suddenly can't type So let's go up one more time. You can see this is essentially the main menu loop here, right? Let's let's let's list at 780 There we go. So this is you know the main menu that's being executed I put the kernel prompt I get a string and I try to execute it So this is a good way of sort of exploring what's going on in your system There's a great documentation for gdb online The only worries that I would point out is that gdb does the OS 161 gdb because it's debugging Through this socket that's provided by the system simulator does not necessarily Provide all the capabilities that you might be used to so for example I think watch points or something that doesn't work very well if not at all But you can set break points you can set through things you can set in and out of functions You can generate back traces. There's a lot of useful features here gdb Is a tremendously powerful tool for inspecting your running kernel and In comparison with printf another sort of declarative styles of debugging This sort of feature is extremely powerful and it's something that's worth learning because it will make it much much easier For you to find out what's going wrong when things aren't behaving as expected Okay, so that's the last of this one Hopefully you guys have enjoyed these and they've been useful in some way. Good luck with assignment zero