Lynn Bradshaw via plug on 6 Jan 2022 16:23:27 -0800


[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]

Re: [PLUG] Topics for PLUG in January


The scare quotes are there because it was a tongue-in-cheek remark.
True cheating would be stealing others' code or looking up the answers
and just plugging them in. (They're all some easily verified
non-negative integer as opposed to the approach many other sites use
with an automated code judge.)

Having said that, for some it might subvert what they deem the true
purpose of Project Euler, which would be to develop a full grasp of
the mathematical principles underlying the puzzles and implement all
one's own algorithms to get the answer. For a little bit, I was using
SageMath to do them. Here's a description of SageMath from the
website:

"SageMath is a free open-source mathematics software system licensed
under the GPL. It builds on top of many existing open-source packages:
NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more.
Access their combined power through a common, Python-based language or
directly via interfaces or wrappers.
Mission: Creating a viable free open source alternative to Magma,
Maple, Mathematica and Matlab."

(Yes, it's very close to Python except with embellishments like ^ for
exponentiation and underscores in numbers to make them easier to read,
which Python badly needs. In fact you can see how it transpiles to
Python.)

SageMath puts an enormous amount of mathematical computing power in
the user's hands, basically everything *including* the kitchen sink,
and someone who views Project Euler or other such sites the way I
described above might see me blazing through these challenges with
SageMath and be a bit peeved.

On Tue, Jan 4, 2022 at 3:00 PM Walt Mankowski via plug
<plug@lists.phillylinux.org> wrote:
>
> I disagree that this is "cheating". Is it cheating to use a dictionary
> in Python, or should you write your own hash table code?
>
> On Tue, Jan 04, 2022 at 10:20:42AM -0500, Lynn Bradshaw via plug wrote:
> > I've sort of "cheated" on Project Euler using the exact same method
> > and exact same library. :D
> >
> > On Mon, Jan 3, 2022 at 10:29 AM Walt Mankowski via plug
> > <plug@lists.phillylinux.org> wrote:
> > >
> > > The only one of those topics I've studied is network flows. I could
> > > definitely talk about that, but it feels more advanced than what I was
> > > envisioning. I was thinking about more of a "Graph Theory 101" talk to
> > > go over the basics.
> > >
> > > I think it's important to understand the algorithms, but for most
> > > developers I think I think it's far more important to recognize a
> > > problem as something than can be modeled as a graph, and then knowing
> > > how to use a graph library to help you solve it. As an example, in one of
> > > the problems in this year's Advent of Code [1] you were given a grid
> > > of numbers and had to find a path from the upper left to lower right
> > > corners such that the sum of all the cells you pass through was as low
> > > as possible.
> > >
> > > Step 1 in solving it is realizing you can think of the grid as a graph
> > > where each number is a node, and the edges are each cells
> > > neighbors. Once you've done that, there are a number of different
> > > shortest path algorithms you can use. One of the most popular is
> > > called Dijkstra's Algorithm, and some friends mentioned that they had
> > > to look it up and see how to implement it. All I did was load all the
> > > edges into networkx (another Python graph module) and then call
> > > nx.dijkstra_path_length().
> > >
> > > Walt
> > >
> > > 1. https://adventofcode.com/2021/day/15
> > >
> > > On Mon, Jan 03, 2022 at 09:18:20AM -0500, Lynn Bradshaw via plug wrote:
> > > > Oddly enough, I was attempting to install graph-tool just as I read
> > > > the idea. The preface in the book "Complex Network Analysis in Python"
> > > > mentions which sort of topics will or won't be covered, like so: "Many
> > > > discipline-specific aspects, such as triadic census, exponential
> > > > random graph models (ERGMs), and network flows, as well as the whole
> > > > story of network dynamics (evolution and contagion), have been
> > > > intentionally left uncharted." So exactly what angle you have strikes
> > > > me as important. Like for another instance, would it be more about how
> > > > the subject would typically be taught in a discrete math course or
> > > > will NetworkX and such tools come into the picture (i.e. more so
> > > > implementation than theory)? The latter approach might be better.
> > > >
> > > > On Sun, Jan 2, 2022 at 8:10 PM Walt Mankowski via plug
> > > > <plug@lists.phillylinux.org> wrote:
> > > > >
> > > > > I should add that since I haven't actually written a graph theory
> > > > > talk, that wouldn't be ready until at least February.
> > > > >
> > > > > On Sun, Jan 02, 2022 at 06:43:37PM -0500, Walt Mankowski via plug wrote:
> > > > > > Hi everyone,
> > > > > >
> > > > > > I hope everyone enjoyed the holidays. If you were able to take some
> > > > > > time off, I hope you found it relaxing.
> > > > > >
> > > > > > Our next PLUG meetings are Central this coming Wednesday, January 5,
> > > > > > and North next Tuesday, January 11. We don't have any speakers lined
> > > > > > up. If anyone would like to give a talk, please let me know.
> > > > > >
> > > > > > Here are a few topics I've been toying with:
> > > > > >
> > > > > > * We've had a bunch of new folks in the meetings the past few months,
> > > > > >   and I'd be willing to do one of my older talks if anyone's
> > > > > >   interested. You can see them all at http://www.phillylinux.org/talks.html
> > > > > >
> > > > > > * A discussion of this year's Advent of Code [1], which I just
> > > > > >   finished this afternoon.
> > > > > >
> > > > > > * Some basic graph theory was helping in solving a number of the AoC
> > > > > >   problems this year. Would anyone be interested in a Intro to Graph
> > > > > >   Theory talk?
> > > > > >
> > > > > > * Will 2022 finally be the Year of Linux on the Desktop? Or will it be
> > > > > >   the year of Electron on the Linux Desktop?
> > > > > >
> > > > > > Walt
> > > > > >
> > > > > > 1. https://adventofcode.com/
> > > > >
> > > > >
> > > > >
> > > > > > ___________________________________________________________________________
> > > > > > Philadelphia Linux Users Group         --        http://www.phillylinux.org
> > > > > > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> > > > > > General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> > > > >
> > > > > ___________________________________________________________________________
> > > > > Philadelphia Linux Users Group         --        http://www.phillylinux.org
> > > > > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> > > > > General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> > > > ___________________________________________________________________________
> > > > Philadelphia Linux Users Group         --        http://www.phillylinux.org
> > > > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> > > > General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> > > ___________________________________________________________________________
> > > Philadelphia Linux Users Group         --        http://www.phillylinux.org
> > > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> > > General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> > ___________________________________________________________________________
> > Philadelphia Linux Users Group         --        http://www.phillylinux.org
> > Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> > General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
> ___________________________________________________________________________
> Philadelphia Linux Users Group         --        http://www.phillylinux.org
> Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
> General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug
___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug