[PDF Download] Microsoft power apps cookbook apply low code recipes to solve everyday business chall
Microsoft Power Apps Cookbook Apply low code recipes to solve everyday business challenges and become a Power Apps pro 2nd Edition --
Visit to download the full and correct content document: https://textbookfull.com/product/microsoft-power-apps-cookbook-apply-low-code-recip es-to-solve-everyday-business-challenges-and-become-a-power-apps-pro-2nd-editio n/
More products digital (pdf, epub, mobi) instant download maybe you interests ...
Qlik Sense Cookbook: Over 80 recipes on data analytics to solve business intelligence challenges, 2nd Edition Labbe
Pro Microsoft Power BI Administration: Creating a Consistent, Compliant, and Secure Corporate Platform for Business Intelligence 1st Edition Asgeir Gunnarsson
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author nor Packt Publishing or its dealers and distributors, will be held liable for any damages caused or alleged to have been caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
Senior Publishing Product Manager: Ashitosh Gupta
Acquisition Editor – Peer Reviews: Gaurav Gavas
Project Editor: Namrata Katare
Content Development Editor: Matthew Davies
Copy Editor: Safis Editing
Technical Editor: Karan Sonawane
Proofreader: Safis Editing
Indexer: Manju Arasan
Presentation Designer: Ganesh Bhadwalkar
First published: January 2021
Second edition: August 2022
Production reference: 1230822
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street Birmingham B3 2PB, UK.
ISBN 978-1-80323-802-9 www.packt.com
Contributors
About the author
Eickhel Mendoza is a Microsoft Business Applications MVP with many years of experience in project management, Microsoft Azure development, and Microsoft Power Platform technologies.
He is one of the team leads at Intelequia Technologies overseeing all Microsoft 365 and Power Platform projects. He has contributed to significant community events and coordinates the TenerifeDev and Power Platform Canarias user groups. He is also a member of the organizing committee of the Bizz Summit Spain.
I want to thank all the people who have helped shape my love of technology: my parents, my school teachers, and my co-workers, who always challenge me to create great things.
About the reviewer
Rebekka Aalbers-de Jong started her career as a business user but switched to IT over a decade ago. She started out as an IT admin and later moved on to working as a technology consultant at different Microsoft Partners. She is an active contributor to the Microsoft Power Platform community as a speaker, organizer of a local user group, event organizer, and blogger. She has received the Microsoft MVP Award for Business Applications for her contributions to the technical community since 2019.
Rebekka works as a technology consultant at Dutch Microsoft Partner Macaw, where she combines her experience as a non-IT business user, IT administrator, and software consultant to help organizations with implementing the Power Platform and building Power Platform solutions.
Rebekka lives in the Netherlands together with her husband and their two cats.
Previously, she also worked on the first edition of the Power Apps Cookbook.
I would like to thank the worldwide Power Platform community family for all the love for tech, knowledge sharing, and friendship over the years. I also want to thank my husband for letting me spend my spare time on community activities and letting me traipse around Europe, and the world, on a regular basis to attend and speak at community events. Finally, thank you to my employer, Macaw, for supporting me and providing the means for continuous personal development and learning.
Learn more on Discord
To join the Discord community for this book – where you can share feedback, ask questions to the author, and learn about new releases – follow the QR code below:
https://packt.link/lcncdserver
Improving the Browse screen • 180
Refining the Detail screen • 181
Finishing touches for the Edit screen • 183
How it works… • 184
There’s more… • 185
Building a responsive password manager in Power Apps – setting up the Azure Key Vault service
Getting ready • 186
How to do it… • 186
How it works… • 188
Building a responsive password manager in Power Apps – designing an adaptive application
Getting ready • 189 How to do it… • 189
it works… • 195
How to do it… • 200
How it works… • 202
There’s more… • 202
Google Play • 203
Apple’s App Store • 203
Getting ready • 203
How to do it… • 204
Microsoft Edge • 204
Google Chrome • 205
On both browsers • 206
How it works… • 206
There’s more… • 207
Improving SharePoint document libraries with Power Apps
Getting ready • 207
How to do it… • 208
How it works… • 211
There’s more… • 212
Embedding Power Apps in SharePoint pages
Getting ready • 213
How to do it… • 213
How it works… • 215
There’s more… • 215
Making Power BI reports
Getting ready • 216
How to do it… • 216
Provisioning the data source • 217
Installing and configuring Power BI Desktop • 218
Building the Power App • 220
How it works… • 222
Working with Power Apps in Microsoft Teams
Getting ready • 224
How to do it… • 224
Building the canvas app • 224
Microsoft Teams integration • 230
How it works… • 232
There’s more… • 233
Automating the integration of Power Apps
Getting ready • 234
How to do it… • 234
Importing the demo app • 235
Configuring Microsoft Teams policies • 235
Building a secure app registration • 236
Automatic deployment of Teams • 238
How it works… • 240
Building apps with Dataverse for Teams
Getting ready • 242
How to do it… • 242
How it works… • 247
There’s more… • 249
Chapter 8: Empowering Your Applications with No Code Artificial Intelligence 251
Technical requirements
Creating a customer success solution using sentiment
Getting ready • 252
How to do it… • 252
Creating the SharePoint list • 252
Building the canvas app • 253
How it works… • 257
Building a text recognition system using canvas
Getting ready • 258
How to do it… • 259
Creating the solution • 259
Defining the table • 259
Building the app • 260
How it works… • 263
There’s more… • 264
Using Power Automate to create an invoice
Getting ready • 265
How to do it… • 265
Configuring the model • 265
Creating the SharePoint document library • 268
Building the cloud flow • 269
Building the cloud flow to get Excel data • 293
Building the cloud flow to communicate with Power Apps • 294
Building the app • 294
How it works… • 297
Playing with vectors – SVG in canvas apps
How to do it… • 298
How it works… • 301
There’s more… • 301
Transferring SharePoint list apps from one site to another
Getting ready • 302
How to do it… • 302
Building and customizing the list on the source site • 302
Exporting the app • 303
Configuring the destination site • 304
Transforming the exported package • 306
Importing the new package • 307
How it works… • 308
Troubleshooting using the Power Apps canvas Monitor
Getting ready • 309
How to do it… • 309
Provisioning the SharePoint list • 309
Building the app • 310
How it works… • 312
There’s more… • 314
Extending screen real estate using the canvas control
Getting ready • 314
How to do it… • 314
How it works… • 318
Changing Azure SQL Server connections in Power Apps with ease
Getting ready • 319
PowerShell • 319
Azure SQL databases • 320
How to do it… • 320
Creating the environments • 320
Building the app • 320
Exporting the app • 321
Transforming the exported package • 322
How it works… • 324
There’s more... • 325
Renaming files in SharePoint document libraries
Getting ready • 326
How to do it… • 326
Creating the SharePoint document library • 326
Building the cloud flow • 327
Configuring the document library • 329
How it works… • 329
Getting ready • 333
How to do it… • 333
Node.js/npm • 333
Microsoft Power Platform CLI • 334
Editor – VS Code • 334
Editor – Visual Studio 2017 or later • 335
Configuring the Power Platform environment • 336
How it works… • 336
There’s more… • 336
Preface
Power Apps is a low-code platform to build applications from Microsoft. With this platform, you can create solutions to solve your business needs while integrating with other components of the Power Platform, such as Power Automate and Power BI.
Quite different from the complete documentation that exists online, you will find that this is not your regular reference book. Instead, this book exposes real-world scenarios and experiences to help you get a headstart in your Power Apps projects.
Using a curated set of chapters, you will discover different aspects of Power Apps, from the basics of building canvas apps, designing model-driven solutions, extending apps with custom connectors, and integrating apps with other platforms, to the pro-developer side including Power Apps Component Framework and creating website experiences for external users with Power Pages.
Who this book is for
Since we are covering practical use cases, basic knowledge of building applications using Power Apps is required to take advantage of the solutions explored in this book. You will get a step-bystep tutorial on building the recipes crafted for each chapter.
What this book covers
Chapter 1, Building Pixel-Perfect Solutions with Canvas Apps, starts with the best practices for building canvas apps and continues with building solutions, including coverage of the data source setup.
Chapter 2, Building from Data with Model-Driven Apps, continues our journey by following a collection of recipes joined together to create an all-round help desk solution.
Chapter 3, Choosing the Right Data Source for Your Applications, will help you to make a sound decision when determining the data source of your applications. This chapter also explains the importance of the licensing model on this platform.
Chapter 4, Automating Processes with Power Automate, focuses on several use cases to improve business processes using this component of the Power Platform.
Chapter 5, Extending the Platform, builds upon the concept of enhancing the application building process by using components. We will also learn how to extend the platform by creating custom connectors, using geospatial capabilities, and integrating mixed reality.
Chapter 6, Improving User Experience, looks at how to enrich your user interfaces to make your applications more appealing to end users. This chapter will also cover how to create a responsive application using the latest techniques available in Power Apps.
Chapter 7, Power Apps Everywhere, explains all the possible ways to use and integrate Power Apps on many platforms, from mobile device consumption to embedding scenarios on SharePoint and Power BI, without forgetting the latest on Microsoft Teams development, including Dataverse for Teams.
Chapter 8, Empowering Your Applications with No Code Artificial Intelligence, focuses on using AI Builder solutions to improve our applications and processes by bringing artificial intelligence into the mix.
Chapter 9, Discovering the Power Platform Admin Center, is about learning how to manage the Power Platform using the tools and settings available in this admin center.
Chapter 10, Tips, Tricks, and Troubleshooting, offers a collection of hints from the application building experience in Power Apps with a set of topics that will help solve or improve a wide variety of scenarios.
Chapter 11, Advanced Techniques with Power Apps Component Framework, tackles the pro-developer side by building a Power Apps Component Framework component from scratch. We will look at setting up our development environment, deploying the component to an environment, and using it on a canvas app.
Chapter 12, Reaching Beyond the Organization with Power Pages, introduces the new component of the Power Platform: Power Pages. Based on Power Apps Portals, it offers a solution to allow external users to interact with our Dataverse data. This chapter will extend the help desk solution built in previous chapters.
To get the most out of this book
Before diving into building solutions with Power Apps, you are going to need a Microsoft 365 subscription.
You might have one already from your organization, but if you want to have a playground to build apps, I’m going to give you two suggestions:
• Microsoft 365 Developer Program
This program allows you to have a Microsoft 365 subscription with many features available: 25 E5 user licenses, apps such as SharePoint and Microsoft Teams, learning resources, and more. It’s the perfect sandbox environment to create your apps, not only to build Power Apps but also to learn other technologies from the whole Microsoft 365 ecosystem. This subscription renews automatically every 3 months as long as you are actively using it.
To get more information, please refer to https://developer.microsoft.com/en-us/ microsoft-365/dev-program
• Power Apps Developer Plan
This option is the ideal choice if you want a more focused approach to the Power Platform. It offers a free environment for individual use with the same advantages of a paid plan, including premium connectors. However, there are some restrictions, such as app sharing, the need for a Microsoft organizational account, and the ability to use Dataflows. This subscription has no renewal process; it’s perpetual. For more information, please visit https://powerapps.microsoft.com/en-us/developerplan/
Power Platform licensing requirements
Power Apps paid plans
The licensing model on this platform depends on the type of connector needed for your data sources. Standard connectors such as the one used for SharePoint don’t require an additional license besides Microsoft 365, but premium or custom connectors do require a Power Apps license:
• Per app plan
Allows running one app (canvas or model-driven) or portal per user
• Per user plan
Allows building and using unlimited apps and portals (within service limits)
• Pay as you go plan
Allows a per user plan that charges for the number of apps or portals run by a user each month (note that this plan requires an Azure subscription)
To get more insight into the licensing model, please visit https://powerapps.microsoft.com/ en-us/pricing/
Power Automate paid plans
In Power Automate, three licensing plans allow access to data using premium connectors, custom connectors and on-premises data. The difference lies in the capacity of these plans and who will be the end-user of them:
• There are two plans for users: the Per user plan and the Per user plan with attended RPA (Robotic Process Automation). Both let you create unlimited flows, but the latter adds legacy systems robotic process automation and includes AI builder service credits.
• On the other hand, the Per flow plan allows the entire organization to use five flows without needing to license each user.
Using either of these options depends entirely on the analysis of the business process that requires automation. For detailed information about the pricing of these plans, please refer to https:// powerautomate.microsoft.com/en-us/pricing/
Download the example code files
The code bundle for the book is hosted on GitHub at https://github.com/PacktPublishing/ Microsoft-Power-Apps-Cookbook-Second-Edition. We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/ . Check them out!
Download the color images
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here: https://static.packt-cdn.com/downloads/9781803238029_
ColorImages.pdf.
Conventions used
There are a number of text conventions used throughout this book.
Code in text: Indicates code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: “Repeat step 9 for the Ticket Priority column, using the following choices: Low, Medium, and High"
A block of code is set as follows: Filter( vw_TicketData, customer_id = CustomersCbx.Selected.id )
Any command-line input or output is written as follows:
Set-ExecutionPolicy -ExecutionPolicy Bypass
Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: “Choose a name, a region close to you, and describe the purpose. For the Type, you can select Production, Sandbox, or Trial”
Warnings or important notes appear like this.
Tips and tricks appear like this.
Get in touch
Feedback from our readers is always welcome.
General feedback: If you have questions about any aspect of this book, mention the book title in the subject of your message and email us at customercare@packtpub.com
Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit http://www.packtpub.com/support/errata, selecting your book, clicking on the Errata Submission Form link, and entering the details.
Piracy: If you come across any illegal copies of our works in any form on the Internet, we would be grateful if you would provide us with the location address or website name. Please contact us at copyright@packtpub.com with a link to the material.
If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit http://authors.packtpub. com.
Share your thoughts
Once you’ve read Microsoft Power Apps Cookbook, Second Edition, we’d love to hear your thoughts! Please click here to go straight to the Amazon review page for this book and share your feedback.
Your review is important to us and the tech community and will help us make sure we’re delivering excellent quality content.
1 Building Pixel-Perfect Solutions with Canvas Apps
Power Apps is the platform of choice for building business solutions using a low-code method. This approach enables the rise of the citizen developer, a being inside every organization who is keen on learning technology, which also brings the expertise of the business process to which this person belongs.
Canvas apps allow the creation of pixel-perfect implementations of user interfaces. As the name suggests, they bring a variety of tools to build any imaginable design into your applications, allowing you to design and develop apps of any type, whether a critical business system or a simple tracking application.
During this chapter, we will discover how to create a set of applications that will give you an insight into different styles when building canvas applications: standalone and embedded. We will also learn how to set up different types of data sources for our applications.
This chapter consists of the following recipes:
• Discovering best practices when building canvas apps
• Creating an incident tracking solution – setting up the data source
• Creating an incident tracking solution – building the user interface
• Embedding an expense tracking list with SharePoint list Power Apps
• Creating a canvas app from existing data
Discovering best practices when building canvas apps
Setting up data sources, defining business process flows, creating user interfaces; all these tasks are pieces of an application-building process. These pieces come together to accomplish one main goal: to build a solution that solves a specific need.
One of the things you need to consider is the maintainability of your app. Whether fixing bugs or adding new features, using best practices is always a good idea. No matter your technology, well-documented code is easier to maintain.
Even though Power Apps is a low-code platform, you must consider certain things before building applications. Like any other developer team, you need to establish code standards. These standards allow your team to be more productive by setting predefined patterns for variable naming, control usage, and coding methodology.
Variable naming
Proper naming gives your developers instant insight into the scope of your variables. For example, if a variable name prefix starts with lcl (short for local), it means its value will only be available on the current screen. On the other hand, using gbl (short for global) means that this variable is accessible across the whole application.
These examples might seem trivial, but if another developer needs to maintain your app or if your app serves as a template for other apps in your organization, setting these patterns from the start can help the application-building process and maintainability.
Control usage
One of the vital elements of an application’s success is performance. If an application is slow to start or takes several seconds to perform a task, it hurts user adoption.
Here are a couple of examples of this:
• A great-looking app that uses many controls to build its user interface but hurts performance each time the screens get rendered.
• Displaying data to the user using a gallery inside a gallery. This approach might be tempting to present master-detail data, but this would be a significant slowdown in your application.
Another random document with no related content on Scribd:
The Project Gutenberg eBook of From trail to railway through the Appalachians
This ebook is for the use of anyone anywhere in the United States and most other parts of the world at no cost and with almost no restrictions whatsoever. You may copy it, give it away or re-use it under the terms of the Project Gutenberg License included with this ebook or online at www.gutenberg.org. If you are not located in the United States, you will have to check the laws of the country where you are located before using this eBook.
Title: From trail to railway through the Appalachians
Author: Albert Perry Brigham
Release date: October 19, 2023 [eBook #71908]
Language: English
Original publication: Boston: Ginn and Company, 1907
Credits: deaurider and the Online Distributed Proofreading Team at https://www.pgdp.net (This file was produced from images generously made available by The Internet Archive)
*** START OF THE PROJECT GUTENBERG EBOOK FROM TRAIL TO RAILWAY THROUGH THE APPALACHIANS ***
Transcriber’s Note
Larger versions of most illustrations may be seen by rightclicking them and selecting an option to view them separately, or by double-tapping and/or stretching them.
Additional notes will be found near the end of this ebook.
E U S
FROM TRAIL TO RAILWAY THROUGH THE APPALACHIANS
BY ALBERT PERRY BRIGHAM, A.M.
P G C U A “G I A H ”
GINN AND COMPANY
BOSTON NEW YORK CHICAGO LONDON
ATLANTA · DALLAS · COLUMBUS · SAN FRANCISCO
C , 1907,
ALBERT PERRY BRIGHAM
ALL RIGHTS RESERVED
621.1
T h e A t h e n æ u m P r e s s GINN AND COMPANY · PROPRIETORS · BOSTON · U.S.A.
PREFACE
This book grows out of the conviction that geography in the schools must return somewhat to human interests. In saying this the author will scarcely need to defend himself against the charge of undervaluing physiography It is only a question of wise adaptation to youthful students. Elementary history also needs to be placed in its setting of physical conditions. It is here attempted to promote both these objects in the study of the eastern United States. If geography and history can be well correlated, both of these great themes may be taught with economy of time and with stronger interest.
Much more might be said concerning the growth of centers, the agriculture, and the commerce, but the limits of space are rigid. Hence roads and westward movements have been made the main topic. The geography is not taught formally, but is woven in with the story. Care has been given to the maps of the several regions, that they should clearly express the essentials and avoid the vagueness of many small-scale representations of the Appalachian belt.
A. P. B.
C U October, 1906
LIST OF ILLUSTRATIONS
33.
34.
35.
36.
37.
59. Three States Monument, Cumberland Gap 153
60. George Rogers Clark 157
61. On the French Broad 159
62. John Sevier 162
63. James Robertson 164
64. Sevier Monument, Knoxville 165
65. Old Statehouse, Knoxville 166
66. Street in Knoxville 168
67. On the Campus, University of Tennessee 169
68. Marble Quarry near Knoxville 171
69. Statehouse, Nashville 173
70. Chattanooga from Cameron Hill 175
71. Broad Street, Atlanta 177
72. Fulton Bag and Cotton Mills, Atlanta 178
73. Georgia Institute of Technology, Atlanta 179
74. Iron Furnace, Birmingham 180 MAPS
FROM TRAIL TO RAILWAY
CHAPTER I
BOSTON AND THE BERKSHIRES
From the time of the settlement of Massachusetts Boston has had a large share of the business of the country. Her natural advantages are great. On the one hand there is her harbor, sheltered by many islands from the storms of the Atlantic; on the other are tidal rivers and level highways leading to the interior of the state. Emerson, who was born in Boston, wrote:
Each street leads downward to the sea, Or landward to the west.
For generations, as the city has grown, her people have been crowding back the ocean by filling in the shallows, and now her busy streets extend over acres of “made land,” while from the south, the west, and the north, lines of railway connect her with all parts of America.
Not many years after the War of the Revolution a Boston merchant ship went around the world. She took on board a native at Hawaii, sold her load of furs in Canton, rounded Cape Horn, and anchored at length in Boston harbor. So great an achievement did this seem that Governor Hancock and the people said fine things and made merry
This little ship was eighty-three feet long, and you could measure off seven or eight times her length on one of the big liners of to-day Later the same ship set sail again, and on the west coast of America, in one of the roughest seas, her master, Captain Gray, saw the
mouth of a great river. He was determined to enter it. Having crossed the breakers, he sailed up the river more than twenty miles, and today it bears the name of his ship, the Columbia. Boston was reaching out into the wide world. Many years later this discovery had much to do with securing the rights of the United States in the Oregon country against the claims of Great Britain.
Young lads often went out on these voyages, and the training made them strong men. There were dangers on the ocean then which to-day we do not fear, for pirates still lay in wait for merchantmen and foreign powers took liberties with American ships. One vessel seen in Boston harbor was named Catch-me-if-you-can.
Many years later, when Mr. Samuel Cunard of Halifax took a contract to carry the royal mail between Liverpool and America, there was an immediate protest from the Boston merchants against ending the voyage at Halifax. They urged the great commercial advantage of having the ships run westward to Boston after stopping at Halifax, and so powerful were these arguments that the first Cunard liners came steaming into Massachusetts bay.
This was not pleasant for New York people, who tried to show that theirs was the better port. As if to help in the fight against
Boston, the harbor froze over in the winter of 1844, and the Cunard ship, the Britannia, could not sail. Determined to hold their own, the Boston people engaged Frederick Tudor, a great exporter of ice, to bring his machinery from the fresh-water ponds and cut a way. He soon made a lane of open water, and the Britannia sailed out for Liverpool.
While ocean trade was growing much had been done on the land. Settlements were first made at Plymouth, Salem, and Boston, and as soon as possible the rough forest trails joining these towns were changed into roads. Many ferries and bridges were needed to cross the streams, and roads were carried back into the country as the people settled farther from the sea.
After Providence was begun, in the Narragansett country, and the rich lands along the Connecticut were settled, there was need of roads across the hills of Massachusetts, so that the colonists could visit each other, exchange letters, and thus be less exposed to danger from savages in the great American wilderness.
The highway leading along the east coast was called Bay Road. A post rider went between Boston and New York in 1704, and a rough path he had to travel. It was thought remarkable, four years later, that a woman, Madam Sarah Knights, made that journey She afterwards taught school in Boston, and Benjamin Franklin was one of her pupils. Somebody scratched these lines on a window pane in her schoolroom:
Through many toils and many frights
I have returned, poor Sarah Knights; Over great rocks and many stones, God has preserved from fractured bones.
N E
B M R (F D ) +-+-+-+-+-+
B A R
There is no doubt about the “great rocks and many stones” of New England, but around Boston, at any rate, one usually sees them
now at a safe distance.
In western Massachusetts is the great Berkshire country. Through most of its length the Housatonic river runs to the southward. At the north the Hoosick river flows from it, across a corner of Vermont, to the Hudson. On the first is beautiful Pittsfield, and on the second is busy North Adams with its mills. In sight everywhere are the mountains, not very high and usually covered with forest, but sometimes bold and rocky. Farther north we should call them the Green mountains, but here we name them the Berkshires. The eastern range, which separates the Housatonic valley on the west from the Connecticut valley on the east, is Hoosac mountain, of which we shall hear again.
These long ranges of mountains run from north to south, and while it was easy to follow the valleys between them, it was hard to go across them from east to west or from west to east. Boston and all the chief towns of New England lay eastward, and the rest of the country was west of the mountains. If a Massachusetts family wished to settle in the fertile lands of western New York or Ohio, they had to cross the mountains. In our day the mountain region is full of towns and beautiful summer homes, but then it was a wilderness which in places was almost impassable. If it was difficult to make a single journey between the Connecticut river and the Hudson, it was quite out of the question to carry grain and fruit from the West to Boston, and to bring back in exchange the goods made in her factories.
Near Pittsfield, in the heart of the Berkshires, rises the Westfield river, which has cut a deep valley eastward through the mountains. Opposite the place where this stream enters the Connecticut the beautiful city of Springfield has now grown up, partly on the low grounds and partly on a terrace. It is readily seen that the Westfield valley forms a natural roadway from here westward to Pittsfield, and on toward Albany and the Mohawk in New York. We cannot say that the valley was made for the cities, but the cities were made, in part at least, because the valley was there.